ZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJnNDMxeHguaCBiL0luY2x1ZGUvc3RtMzJnNDMxeHguaAppbmRleCAxMDA0MDZiLi43YmUzYzIzIDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyZzQzMXh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMmc0MzF4eC5oCkBAIC03LDE4ICs3LDE3IEBACiAgICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOgogICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzCiAgICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbgotICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQorICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBoYXJkd2FyZQogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqIEBhdHRlbnRpb24KICAgKgotICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICoKLSAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLSAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi0gICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCisgICogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorICAqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqLwpAQCAtNDUsMTEgKzQ0LDExIEBACiAvKioKICAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscwogICAgKi8KLSNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDEgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KLSNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCi0jZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMVUgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLworI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogLyoqCiAgICogQH0KQEAgLTkxMiw2ICs5MTEsMTAgQEAKIH0gVUNQRF9UeXBlRGVmOwogCiAKKy8qKgorICAqIEB9CisgICovCisKIC8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXAKICAgKiBAewogICAqLwpAQCAtMTE4OSw2ICsxMTkyLDE1IEBACiAgICogQHsKICAgKi8KIAorICAvKiogQGFkZHRvZ3JvdXAgSGFyZHdhcmVfQ29uc3RhbnRfRGVmaW5pdGlvbgorICAgICogQHsKKyAgICAqLworI2RlZmluZSBMU0lfU1RBUlRVUF9USU1FIDEzMFUgLyohPCBMU0kgTWF4aW11bSBzdGFydHVwIHRpbWUgaW4gdXMgKi8KKworICAvKioKKyAgICAqIEB9CisgICAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbgogICAqIEB7CiAgICovCkBAIC0xMzEyNSw0ICsxMzEzNywzIEBACiAgICogQH0KICAgKi8KIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJnNDQxeHguaCBiL0luY2x1ZGUvc3RtMzJnNDQxeHguaAppbmRleCBhMWUzZDQ0Li41YmMzMmZhIDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyZzQ0MXh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMmc0NDF4eC5oCkBAIC03LDE4ICs3LDE3IEBACiAgICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOgogICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzCiAgICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbgotICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQorICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBoYXJkd2FyZQogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqIEBhdHRlbnRpb24KICAgKgotICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICoKLSAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLSAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi0gICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCisgICogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorICAqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqLwpAQCAtNDUsMTEgKzQ0LDExIEBACiAvKioKICAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscwogICAgKi8KLSNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDEgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KLSNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCi0jZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMVUgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLworI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogLyoqCiAgICogQH0KQEAgLTk0NCw2ICs5NDMsMTAgQEAKIH0gVUNQRF9UeXBlRGVmOwogCiAKKy8qKgorICAqIEB9CisgICovCisKIC8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXAKICAgKiBAewogICAqLwpAQCAtMTIyMyw2ICsxMjI2LDE1IEBACiAgICogQHsKICAgKi8KIAorICAvKiogQGFkZHRvZ3JvdXAgSGFyZHdhcmVfQ29uc3RhbnRfRGVmaW5pdGlvbgorICAgICogQHsKKyAgICAqLworI2RlZmluZSBMU0lfU1RBUlRVUF9USU1FIDEzMFUgLyohPCBMU0kgTWF4aW11bSBzdGFydHVwIHRpbWUgaW4gdXMgKi8KKworICAvKioKKyAgICAqIEB9CisgICAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbgogICAqIEB7CiAgICovCkBAIC0xMzM1Nyw0ICsxMzM2OSwzIEBACiAgICogQH0KICAgKi8KIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJnNDcxeHguaCBiL0luY2x1ZGUvc3RtMzJnNDcxeHguaAppbmRleCA5YTNmZTIyLi5hOWYzNDU3IDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyZzQ3MXh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMmc0NzF4eC5oCkBAIC03LDE4ICs3LDE3IEBACiAgICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOgogICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzCiAgICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbgotICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQorICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBoYXJkd2FyZQogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqIEBhdHRlbnRpb24KICAgKgotICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICoKLSAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLSAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi0gICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCisgICogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorICAqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqLwpAQCAtNDUsMTEgKzQ0LDExIEBACiAvKioKICAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscwogICAgKi8KLSNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDEgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KLSNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCi0jZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMVUgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLworI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogLyoqCiAgICogQH0KQEAgLTEyNSw3ICsxMjQsNiBAQAogICBUSU04X0NDX0lSUW4gICAgICAgICAgICAgICAgPSA0NiwgICAgIC8qITwgVElNOCBDYXB0dXJlIENvbXBhcmUgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBBREMzX0lSUW4gICAgICAgICAgICAgICAgICAgPSA0NywgICAgIC8qITwgQURDMyBnbG9iYWwgIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBMUFRJTTFfSVJRbiAgICAgICAgICAgICAgICAgPSA0OSwgICAgIC8qITwgTFAgVElNMSBJbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwotICBUSU01X0lSUW4gICAgICAgICAgICAgICAgICAgPSA1MCwgICAgIC8qITwgVElNNSBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBTUEkzX0lSUW4gICAgICAgICAgICAgICAgICAgPSA1MSwgICAgIC8qITwgU1BJMyBnbG9iYWwgSW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBVQVJUNF9JUlFuICAgICAgICAgICAgICAgICAgPSA1MiwgICAgIC8qITwgVUFSVDQgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBVQVJUNV9JUlFuICAgICAgICAgICAgICAgICAgPSA1MywgICAgIC8qITwgVUFSVDUgZ2xvYmFsIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtMTQxLDYgKzEzOSwxMCBAQAogICBDT01QNF9JUlFuICAgICAgICAgICAgICAgICAgPSA2NSwgICAgIC8qITwgQ09NUDQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBDUlNfSVJRbiAgICAgICAgICAgICAgICAgICAgPSA3NSwgICAgIC8qITwgQ1JTIGdsb2JhbCBpbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBTQUkxX0lSUW4gICAgICAgICAgICAgICAgICAgPSA3NiwgICAgIC8qITwgU2VyaWFsIEF1ZGlvIEludGVyZmFjZSBnbG9iYWwgaW50ZXJydXB0ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0yMF9CUktfSVJRbiAgICAgICAgICAgICAgPSA3NywgICAgIC8qITwgVElNMjAgQnJlYWssIFRyYW5zaXRpb24gZXJyb3IgYW5kIEluZGV4IGVycm9yIEludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0yMF9VUF9JUlFuICAgICAgICAgICAgICAgPSA3OCwgICAgIC8qITwgVElNMjAgVXBkYXRlIGludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworICBUSU0yMF9UUkdfQ09NX0lSUW4gICAgICAgICAgPSA3OSwgICAgIC8qITwgVElNMjAgVHJpZ2dlciwgQ29tbXV0YXRpb24sIERpcmVjdGlvbiBjaGFuZ2UgYW5kIEluZGV4IEludGVycnVwdCAgICAgICAgICAgICAgICAgICAqLworICBUSU0yMF9DQ19JUlFuICAgICAgICAgICAgICAgPSA4MCwgICAgIC8qITwgVElNMjAgQ2FwdHVyZSBDb21wYXJlIGludGVycnVwdCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBGUFVfSVJRbiAgICAgICAgICAgICAgICAgICAgPSA4MSwgICAgIC8qITwgRlBVIGdsb2JhbCBpbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBJMkM0X0VWX0lSUW4gICAgICAgICAgICAgICAgPSA4MiwgICAgIC8qITwgSTJDNCBFdmVudCBpbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogICBJMkM0X0VSX0lSUW4gICAgICAgICAgICAgICAgPSA4MywgICAgIC8qITwgSTJDNCBFcnJvciBpbnRlcnJ1cHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwpAQCAtOTY3LDYgKzk2OSwxMCBAQAogfSBVQ1BEX1R5cGVEZWY7CiAKIAorLyoqCisgICogQH0KKyAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcAogICAqIEB7CiAgICovCkBAIC0xMDAyLDcgKzEwMDgsNiBAQAogI2RlZmluZSBUSU0yX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDAwMFVMKQogI2RlZmluZSBUSU0zX0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDQwMFVMKQogI2RlZmluZSBUSU00X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MDgwMFVMKQotI2RlZmluZSBUSU01X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MEMwMFVMKQogI2RlZmluZSBUSU02X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MTAwMFVMKQogI2RlZmluZSBUSU03X0JBU0UgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MTQwMFVMKQogI2RlZmluZSBDUlNfQkFTRSAgICAgICAgICAgICAgKEFQQjFQRVJJUEhfQkFTRSArIDB4MjAwMFVMKQpAQCAtMTA1Miw2ICsxMDU3LDcgQEAKICNkZWZpbmUgVElNMTVfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDQwMDBVTCkKICNkZWZpbmUgVElNMTZfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDQ0MDBVTCkKICNkZWZpbmUgVElNMTdfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDQ4MDBVTCkKKyNkZWZpbmUgVElNMjBfQkFTRSAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDUwMDBVTCkKICNkZWZpbmUgU0FJMV9CQVNFICAgICAgICAgICAgIChBUEIyUEVSSVBIX0JBU0UgKyAweDU0MDBVTCkKICNkZWZpbmUgU0FJMV9CbG9ja19BX0JBU0UgICAgIChTQUkxX0JBU0UgKyAweDAwMDRVTCkKICNkZWZpbmUgU0FJMV9CbG9ja19CX0JBU0UgICAgIChTQUkxX0JBU0UgKyAweDAwMjRVTCkKQEAgLTExNDQsNyArMTE1MCw2IEBACiAjZGVmaW5lIFRJTTIgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0yX0JBU0UpCiAjZGVmaW5lIFRJTTMgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0zX0JBU0UpCiAjZGVmaW5lIFRJTTQgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU00X0JBU0UpCi0jZGVmaW5lIFRJTTUgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU01X0JBU0UpCiAjZGVmaW5lIFRJTTYgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU02X0JBU0UpCiAjZGVmaW5lIFRJTTcgICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU03X0JBU0UpCiAjZGVmaW5lIENSUyAgICAgICAgICAgICAgICAgKChDUlNfVHlwZURlZiAqKSBDUlNfQkFTRSkKQEAgLTExOTIsNiArMTE5Nyw3IEBACiAjZGVmaW5lIFRJTTE1ICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0xNV9CQVNFKQogI2RlZmluZSBUSU0xNiAgICAgICAgICAgICAgICgoVElNX1R5cGVEZWYgKikgVElNMTZfQkFTRSkKICNkZWZpbmUgVElNMTcgICAgICAgICAgICAgICAoKFRJTV9UeXBlRGVmICopIFRJTTE3X0JBU0UpCisjZGVmaW5lIFRJTTIwICAgICAgICAgICAgICAgKChUSU1fVHlwZURlZiAqKSBUSU0yMF9CQVNFKQogI2RlZmluZSBTQUkxICAgICAgICAgICAgICAgICgoU0FJX1R5cGVEZWYgKikgU0FJMV9CQVNFKQogI2RlZmluZSBTQUkxX0Jsb2NrX0EgICAgICAgICgoU0FJX0Jsb2NrX1R5cGVEZWYgKilTQUkxX0Jsb2NrX0FfQkFTRSkKICNkZWZpbmUgU0FJMV9CbG9ja19CICAgICAgICAoKFNBSV9CbG9ja19UeXBlRGVmICopU0FJMV9CbG9ja19CX0JBU0UpCkBAIC0xMjc3LDYgKzEyODMsMTUgQEAKICAgKiBAewogICAqLwogCisgIC8qKiBAYWRkdG9ncm91cCBIYXJkd2FyZV9Db25zdGFudF9EZWZpbml0aW9uCisgICAgKiBAeworICAgICovCisjZGVmaW5lIExTSV9TVEFSVFVQX1RJTUUgMTMwVSAvKiE8IExTSSBNYXhpbXVtIHN0YXJ0dXAgdGltZSBpbiB1cyAqLworCisgIC8qKgorICAgICogQH0KKyAgICAqLworCiAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uCiAgICogQHsKICAgKi8KQEAgLTI5MjgsOSArMjk0Myw2IEBACiAjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfVElNNF9TVE9QX1BvcyAgICAgICgyVSkKICNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU00X1NUT1BfTXNrICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfVElNNF9TVE9QX1BvcykvKiE8IDB4MDAwMDAwMDQgKi8KICNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU00X1NUT1AgICAgICAgICAgREJHTUNVX0FQQjFGWlIxX0RCR19USU00X1NUT1BfTXNrCi0jZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfVElNNV9TVE9QX1BvcyAgICAgICgzVSkKLSNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU01X1NUT1BfTXNrICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfVElNNV9TVE9QX1BvcykvKiE8IDB4MDAwMDAwMDggKi8KLSNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU01X1NUT1AgICAgICAgICAgREJHTUNVX0FQQjFGWlIxX0RCR19USU01X1NUT1BfTXNrCiAjZGVmaW5lIERCR01DVV9BUEIxRlpSMV9EQkdfVElNNl9TVE9QX1BvcyAgICAgICg0VSkKICNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU02X1NUT1BfTXNrICAgICAgKDB4MVVMIDw8IERCR01DVV9BUEIxRlpSMV9EQkdfVElNNl9TVE9QX1BvcykvKiE8IDB4MDAwMDAwMTAgKi8KICNkZWZpbmUgREJHTUNVX0FQQjFGWlIxX0RCR19USU02X1NUT1AgICAgICAgICAgREJHTUNVX0FQQjFGWlIxX0RCR19USU02X1NUT1BfTXNrCkBAIC0yOTgwLDYgKzI5OTIsOSBAQAogI2RlZmluZSBEQkdNQ1VfQVBCMkZaX0RCR19USU0xN19TVE9QX1BvcyAgICAgICAoMThVKQogI2RlZmluZSBEQkdNQ1VfQVBCMkZaX0RCR19USU0xN19TVE9QX01zayAgICAgICAoMHgxVUwgPDwgREJHTUNVX0FQQjJGWl9EQkdfVElNMTdfU1RPUF9Qb3MpLyohPCAweDAwMDQwMDAwICovCiAjZGVmaW5lIERCR01DVV9BUEIyRlpfREJHX1RJTTE3X1NUT1AgICAgICAgICAgIERCR01DVV9BUEIyRlpfREJHX1RJTTE3X1NUT1BfTXNrCisjZGVmaW5lIERCR01DVV9BUEIyRlpfREJHX1RJTTIwX1NUT1BfUG9zICAgICAgICgyMFUpCisjZGVmaW5lIERCR01DVV9BUEIyRlpfREJHX1RJTTIwX1NUT1BfTXNrICAgICAgICgweDFVTCA8PCBEQkdNQ1VfQVBCMkZaX0RCR19USU0yMF9TVE9QX1BvcykvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgREJHTUNVX0FQQjJGWl9EQkdfVElNMjBfU1RPUCAgICAgICAgICAgREJHTUNVX0FQQjJGWl9EQkdfVElNMjBfU1RPUF9Nc2sKIAogLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KIC8qICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCkBAIC04MTAxLDkgKzgxMTYsNiBAQAogI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1RJTTRSU1RfUG9zICAgICAgICAgICAgKDJVKQogI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1RJTTRSU1RfTXNrICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxUlNUUjFfVElNNFJTVF9Qb3MpLyohPCAweDAwMDAwMDA0ICovCiAjZGVmaW5lIFJDQ19BUEIxUlNUUjFfVElNNFJTVCAgICAgICAgICAgICAgICBSQ0NfQVBCMVJTVFIxX1RJTTRSU1RfTXNrCi0jZGVmaW5lIFJDQ19BUEIxUlNUUjFfVElNNVJTVF9Qb3MgICAgICAgICAgICAoM1UpCi0jZGVmaW5lIFJDQ19BUEIxUlNUUjFfVElNNVJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFSU1RSMV9USU01UlNUX1BvcykvKiE8IDB4MDAwMDAwMDggKi8KLSNkZWZpbmUgUkNDX0FQQjFSU1RSMV9USU01UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIxUlNUUjFfVElNNVJTVF9Nc2sKICNkZWZpbmUgUkNDX0FQQjFSU1RSMV9USU02UlNUX1BvcyAgICAgICAgICAgICg0VSkKICNkZWZpbmUgUkNDX0FQQjFSU1RSMV9USU02UlNUX01zayAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMVJTVFIxX1RJTTZSU1RfUG9zKS8qITwgMHgwMDAwMDAxMCAqLwogI2RlZmluZSBSQ0NfQVBCMVJTVFIxX1RJTTZSU1QgICAgICAgICAgICAgICAgUkNDX0FQQjFSU1RSMV9USU02UlNUX01zawpAQCAtODE5Miw2ICs4MjA0LDkgQEAKICNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE3UlNUX1BvcyAgICAgICAgICAgICgxOFUpCiAjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1RJTTE3UlNUX1BvcykvKiE8IDB4MDAwNDAwMDAgKi8KICNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTE3UlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0xN1JTVF9Nc2sKKyNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTIwUlNUX1BvcyAgICAgICAgICAgICgyMFUpCisjZGVmaW5lIFJDQ19BUEIyUlNUUl9USU0yMFJTVF9Nc2sgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1RJTTIwUlNUX1BvcykvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjJSU1RSX1RJTTIwUlNUICAgICAgICAgICAgICAgIFJDQ19BUEIyUlNUUl9USU0yMFJTVF9Nc2sKICNkZWZpbmUgUkNDX0FQQjJSU1RSX1NBSTFSU1RfUG9zICAgICAgICAgICAgICgyMVUpCiAjZGVmaW5lIFJDQ19BUEIyUlNUUl9TQUkxUlNUX01zayAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJSU1RSX1NBSTFSU1RfUG9zKS8qITwgMHgwMDIwMDAwMCAqLwogI2RlZmluZSBSQ0NfQVBCMlJTVFJfU0FJMVJTVCAgICAgICAgICAgICAgICAgUkNDX0FQQjJSU1RSX1NBSTFSU1RfTXNrCkBAIC04MjcyLDkgKzgyODcsNiBAQAogI2RlZmluZSBSQ0NfQVBCMUVOUjFfVElNNEVOX1BvcyAgICAgICAgICAgICAgKDJVKQogI2RlZmluZSBSQ0NfQVBCMUVOUjFfVElNNEVOX01zayAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxRU5SMV9USU00RU5fUG9zKS8qITwgMHgwMDAwMDAwNCAqLwogI2RlZmluZSBSQ0NfQVBCMUVOUjFfVElNNEVOICAgICAgICAgICAgICAgICAgUkNDX0FQQjFFTlIxX1RJTTRFTl9Nc2sKLSNkZWZpbmUgUkNDX0FQQjFFTlIxX1RJTTVFTl9Qb3MgICAgICAgICAgICAgICgzVSkKLSNkZWZpbmUgUkNDX0FQQjFFTlIxX1RJTTVFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMUVOUjFfVElNNUVOX1BvcykvKiE8IDB4MDAwMDAwMDggKi8KLSNkZWZpbmUgUkNDX0FQQjFFTlIxX1RJTTVFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIxRU5SMV9USU01RU5fTXNrCiAjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU02RU5fUG9zICAgICAgICAgICAgICAoNFUpCiAjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU02RU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjFFTlIxX1RJTTZFTl9Qb3MpLyohPCAweDAwMDAwMDEwICovCiAjZGVmaW5lIFJDQ19BUEIxRU5SMV9USU02RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMUVOUjFfVElNNkVOX01zawpAQCAtODM2OSw2ICs4MzgxLDkgQEAKICNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMTdFTl9Qb3MgICAgICAgICAgICAgICgxOFUpCiAjZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE3RU5fTXNrICAgICAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJFTlJfVElNMTdFTl9Qb3MpLyohPCAweDAwMDQwMDAwICovCiAjZGVmaW5lIFJDQ19BUEIyRU5SX1RJTTE3RU4gICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9USU0xN0VOX01zaworI2RlZmluZSBSQ0NfQVBCMkVOUl9USU0yMEVOX1BvcyAgICAgICAgICAgICAgKDIwVSkKKyNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMjBFTl9Nc2sgICAgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMkVOUl9USU0yMEVOX1BvcykvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjJFTlJfVElNMjBFTiAgICAgICAgICAgICAgICAgIFJDQ19BUEIyRU5SX1RJTTIwRU5fTXNrCiAjZGVmaW5lIFJDQ19BUEIyRU5SX1NBSTFFTl9Qb3MgICAgICAgICAgICAgICAoMjFVKQogI2RlZmluZSBSQ0NfQVBCMkVOUl9TQUkxRU5fTXNrICAgICAgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyRU5SX1NBSTFFTl9Qb3MpLyohPCAweDAwMjAwMDAwICovCiAjZGVmaW5lIFJDQ19BUEIyRU5SX1NBSTFFTiAgICAgICAgICAgICAgICAgICBSQ0NfQVBCMkVOUl9TQUkxRU5fTXNrCkBAIC04NDU4LDkgKzg0NzMsNiBAQAogI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU00U01FTl9Qb3MgICAgICAgICAgKDJVKQogI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU00U01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX1RJTTRTTUVOX1BvcykvKiE8IDB4MDAwMDAwMDQgKi8KICNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVElNNFNNRU4gICAgICAgICAgICAgIFJDQ19BUEIxU01FTlIxX1RJTTRTTUVOX01zawotI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU01U01FTl9Qb3MgICAgICAgICAgKDNVKQotI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU01U01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX1RJTTVTTUVOX1BvcykvKiE8IDB4MDAwMDAwMDggKi8KLSNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVElNNVNNRU4gICAgICAgICAgICAgIFJDQ19BUEIxU01FTlIxX1RJTTVTTUVOX01zawogI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU02U01FTl9Qb3MgICAgICAgICAgKDRVKQogI2RlZmluZSBSQ0NfQVBCMVNNRU5SMV9USU02U01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIxU01FTlIxX1RJTTZTTUVOX1BvcykvKiE8IDB4MDAwMDAwMTAgKi8KICNkZWZpbmUgUkNDX0FQQjFTTUVOUjFfVElNNlNNRU4gICAgICAgICAgICAgIFJDQ19BUEIxU01FTlIxX1RJTTZTTUVOX01zawpAQCAtODU1NSw2ICs4NTY3LDkgQEAKICNkZWZpbmUgUkNDX0FQQjJTTUVOUl9USU0xN1NNRU5fUG9zICAgICAgICAgICgxOFUpCiAjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMTdTTUVOX01zayAgICAgICAgICAoMHgxVUwgPDwgUkNDX0FQQjJTTUVOUl9USU0xN1NNRU5fUG9zKS8qITwgMHgwMDA0MDAwMCAqLwogI2RlZmluZSBSQ0NfQVBCMlNNRU5SX1RJTTE3U01FTiAgICAgICAgICAgICAgUkNDX0FQQjJTTUVOUl9USU0xN1NNRU5fTXNrCisjZGVmaW5lIFJDQ19BUEIyU01FTlJfVElNMjBTTUVOX1BvcyAgICAgICAgICAoMjBVKQorI2RlZmluZSBSQ0NfQVBCMlNNRU5SX1RJTTIwU01FTl9Nc2sgICAgICAgICAgKDB4MVVMIDw8IFJDQ19BUEIyU01FTlJfVElNMjBTTUVOX1BvcykvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgUkNDX0FQQjJTTUVOUl9USU0yMFNNRU4gICAgICAgICAgICAgIFJDQ19BUEIyU01FTlJfVElNMjBTTUVOX01zawogI2RlZmluZSBSQ0NfQVBCMlNNRU5SX1NBSTFTTUVOX1BvcyAgICAgICAgICAgKDIxVSkKICNkZWZpbmUgUkNDX0FQQjJTTUVOUl9TQUkxU01FTl9Nc2sgICAgICAgICAgICgweDFVTCA8PCBSQ0NfQVBCMlNNRU5SX1NBSTFTTUVOX1BvcykvKiE8IDB4MDAyMDAwMDAgKi8KICNkZWZpbmUgUkNDX0FQQjJTTUVOUl9TQUkxU01FTiAgICAgICAgICAgICAgIFJDQ19BUEIyU01FTlJfU0FJMVNNRU5fTXNrCkBAIC0xMzM5NiwxMjIgKzEzNDExLDEyNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNikgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTUpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgMzIgYml0cyBjb3VudGVyICoqKioqKioqKioqKioqKiovCiAKLSNkZWZpbmUgSVNfVElNXzMyQl9DT1VOVEVSX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpKQorI2RlZmluZSBJU19USU1fMzJCX0NPVU5URVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoSU5TVEFOQ0UpID09IFRJTTIpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgdGhlIGJyZWFrIGZ1bmN0aW9uICoqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9CUkVBS19JTlNUQU5DRShJTlNUQU5DRSkgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIEJyZWFrIHNvdXJjZSBzZWxlY3Rpb24gKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0JSRUFLU09VUkNFX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyAyIGJyZWFrIGlucHV0cyAqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0JLSU4yX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBhdCBsZWFzdCAxIGNhcHR1cmUvY29tcGFyZSBjaGFubmVsICoqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQzFfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBhdCBsZWFzdCAyIGNhcHR1cmUvY29tcGFyZSBjaGFubmVscyAqKioqKioqKioqKioqLwogI2RlZmluZSBJU19USU1fQ0MyX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGF0IGxlYXN0IDMgY2FwdHVyZS9jb21wYXJlIGNoYW5uZWxzICoqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQzNfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGF0IGxlYXN0IDQgY2FwdHVyZS9jb21wYXJlIGNoYW5uZWxzICoqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQzRfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGF0IGxlYXN0IDUgY2FwdHVyZS9jb21wYXJlIGNoYW5uZWxzICoqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQzVfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogYXQgbGVhc3QgNiBjYXB0dXJlL2NvbXBhcmUgY2hhbm5lbHMgKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0NDNl9JTlNUQU5DRShJTlNUQU5DRSkgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBETUEgcmVxdWVzdHMgZ2VuZXJhdGlvbiAoVElNeF9ESUVSLkNPTURFKSAqKioqKioqLwogI2RlZmluZSBJU19USU1fQ0NETUFfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBETUEgcmVxdWVzdHMgZ2VuZXJhdGlvbiAoVElNeF9ESUVSLlVERSkgKioqLwogI2RlZmluZSBJU19USU1fRE1BX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU03KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBETUEgcmVxdWVzdHMgZ2VuZXJhdGlvbiAoVElNeF9ESUVSLkNDeERFKSAqKioqKioqLwogI2RlZmluZSBJU19USU1fRE1BX0NDX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBETUEgYnVyc3QgZmVhdHVyZSAqKioqKioqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0RNQUJVUlNUX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTUpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBvdXRwdXQocykgYXZhaWxhYmxlICoqKioqKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQ1hfSU5TVEFOQ0UoSU5TVEFOQ0UsIENIQU5ORUwpIFwKQEAgLTEzNTQxLDEyICsxMzU2MSw2IEBACiAgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwKICAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXAogICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCi0gICAgICgoKElOU1RBTkNFKSA9PSBUSU01KSAmJiAgICAgICAgICAgICAgICAgIFwKLSAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXAotICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcCi0gICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwKLSAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSAgICAgICAgICAgXAotICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiAgICAgICgoKElOU1RBTkNFKSA9PSBUSU04KSAmJiAgICAgICAgICAgICAgICAgIFwKICAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXAogICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcCkBAIC0xMzU2Myw3ICsxMzU3NywxNSBAQAogICAgICAoKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSkpICAgICAgICAgICBcCiAgICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTE3KSAmJiAgICAgICAgICAgICAgICAgXAotICAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkpKSkKKyAgICAgICgoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkgICAgICAgICAgXAorICAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICgoKElOU1RBTkNFKSA9PSBUSU0yMCkgJiYgICAgICAgICAgICAgICAgIFwKKyAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgXAorICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8yKSB8fCAgICAgICAgICBcCisgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzMpIHx8ICAgICAgICAgIFwKKyAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkgfHwgICAgICAgICAgXAorICAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF81KSB8fCAgICAgICAgICBcCisgICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzYpKSkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgY29tcGxlbWVudGFyeSBvdXRwdXQocykgKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9DQ1hOX0lOU1RBTkNFKElOU1RBTkNFLCBDSEFOTkVMKSBcCkBAIC0xMzU4NiwxMzUgKzEzNjA4LDE0MyBAQAogICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSAgICAgICAgICAgICAgXAogICAgIHx8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogICAgICgoKElOU1RBTkNFKSA9PSBUSU0xNykgJiYgICAgICAgICAgICAgICAgICAgXAotICAgICAoKENIQU5ORUwpID09IFRJTV9DSEFOTkVMXzEpKSkKKyAgICAgKChDSEFOTkVMKSA9PSBUSU1fQ0hBTk5FTF8xKSkgICAgICAgICAgICAgIFwKKyAgICB8fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICAoKChJTlNUQU5DRSkgPT0gVElNMjApICYmICAgICAgICAgICAgICAgICAgIFwKKyAgICAgKCgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMSkgfHwgICAgICAgICAgIFwKKyAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMikgfHwgICAgICAgICAgIFwKKyAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfMykgfHwgICAgICAgICAgIFwKKyAgICAgICgoQ0hBTk5FTCkgPT0gVElNX0NIQU5ORUxfNCkpKSkKIAogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBjbG9jayBkaXZpc2lvbiAqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0NMT0NLX0RJVklTSU9OX0lOU1RBTkNFKElOU1RBTkNFKSAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGV4dGVybmFsIGNsb2NrIG1vZGUgMSBmb3IgRVRSRiBpbnB1dCAqKioqKioqLwogI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTFfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGV4dGVybmFsIGNsb2NrIG1vZGUgMiBmb3IgRVRSRiBpbnB1dCAqKioqKioqLwogI2RlZmluZSBJU19USU1fQ0xPQ0tTT1VSQ0VfRVRSTU9ERTJfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGV4dGVybmFsIGNsb2NrIG1vZGUgMSBmb3IgVElYIGlucHV0cyovCiAjZGVmaW5lIElTX1RJTV9DTE9DS1NPVVJDRV9USVhfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTUpfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgaW50ZXJuYWwgdHJpZ2dlciBpbnB1dHMoSVRSWCkgKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0NMT0NLU09VUkNFX0lUUlhfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTUpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSl8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBjb21iaW5lZCAzLXBoYXNlIFBXTSBtb2RlICoqKioqKi8KICNkZWZpbmUgSVNfVElNX0NPTUJJTkVEM1BIQVNFUFdNX0lOU1RBTkNFKElOU1RBTkNFKSAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGNvbW11dGF0aW9uIGV2ZW50IGdlbmVyYXRpb24gKioqLwogI2RlZmluZSBJU19USU1fQ09NTVVUQVRJT05fRVZFTlRfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGNvdW50aW5nIG1vZGUgc2VsZWN0aW9uICoqKioqKioqLwogI2RlZmluZSBJU19USU1fQ09VTlRFUl9NT0RFX1NFTEVDVF9JTlNUQU5DRShJTlNUQU5DRSkgICgoKElOU1RBTkNFKSA9PSBUSU0xKSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGVuY29kZXIgaW50ZXJmYWNlICoqKioqKioqKioqKioqLwogI2RlZmluZSBJU19USU1fRU5DT0RFUl9JTlRFUkZBQ0VfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgSGFsbCBzZW5zb3IgaW50ZXJmYWNlICoqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9IQUxMX1NFTlNPUl9JTlRFUkZBQ0VfSU5TVEFOQ0UoSU5TVEFOQ0UpICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IGV4dGVybmFsIHRyaWdnZXIgaW5wdXQgYXZhaWxhYmxlICoqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0VUUl9JTlNUQU5DRShJTlNUQU5DRSkgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgRVRSIHNvdXJjZSBzZWxlY3Rpb24gKioqKioqKioqKioqKioqLwogI2RlZmluZSBJU19USU1fRVRSU0VMX0lOU1RBTkNFKElOU1RBTkNFKSAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNCkgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKiogVElNIEluc3RhbmNlcyA6IE1hc3RlciBtb2RlIGF2YWlsYWJsZSAoVElNeF9DUjIuTU1TIGF2YWlsYWJsZSApKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9NQVNURVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTYpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTcpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTUpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IFNsYXZlIG1vZGUgYXZhaWxhYmxlIChUSU14X1NNQ1IgYXZhaWxhYmxlICkqKioqKioqLwogI2RlZmluZSBJU19USU1fU0xBVkVfSU5TVEFOQ0UoSU5TVEFOQ0UpICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0zKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIwKSkKIAogLyoqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogc3VwcG9ydGluZyBPQ3hSRUYgY2xlYXIgKioqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX09DWFJFRl9DTEVBUl9JTlNUQU5DRShJTlNUQU5DRSkgICAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE2KSB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE3KSB8fCBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBzdXBwb3J0aW5nIGJpdGZpZWxkIE9DQ1MgaW4gU01DUiByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqLwogI2RlZmluZSBJU19USU1fT0NDU19JTlNUQU5DRShJTlNUQU5DRSkgICAgICAgICAgICAgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICB8fCBcCkBAIC0xMzcyMyw1MSArMTM3NTMsNTQgQEAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHJlbWFwcGluZyBjYXBhYmlsaXR5ICoqKioqKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9SRU1BUF9JTlNUQU5DRShJTlNUQU5DRSkgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTIpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTUpICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgcmVwZXRpdGlvbiBjb3VudGVyICoqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9SRVBFVElUSU9OX0NPVU5URVJfSU5TVEFOQ0UoSU5TVEFOQ0UpICAoKChJTlNUQU5DRSkgPT0gVElNMSkgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU04KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTYpIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgQURDIHRyaWdnZXJpbmcgdGhyb3VnaCBUUkdPMiAqKiovCiAjZGVmaW5lIElTX1RJTV9UUkdPMl9JTlNUQU5DRShJTlNUQU5DRSkgICAgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqKiBUSU0gSW5zdGFuY2VzIDogVGltZXIgaW5wdXQgWE9SIGZ1bmN0aW9uICoqKioqKioqKioqKioqKioqLwogI2RlZmluZSBJU19USU1fWE9SX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICgoKElOU1RBTkNFKSA9PSBUSU0xKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMikgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTMpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU00KSAgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNNSkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBUaW1lciBpbnB1dCBzZWxlY3Rpb24gKioqKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9USVNFTF9JTlNUQU5DRShJTlNUQU5DRSkgKCgoSU5TVEFOQ0UpID09IFRJTTEpICAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yKSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMykgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTQpICAgfHwgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU01KSAgIHx8IFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNOCkgICB8fCBcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTE1KSAgfHwgXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNikgIHx8IFwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMTcpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0xNykgIHx8IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKChJTlNUQU5DRSkgPT0gVElNMjApKQogCiAvKioqKioqKioqKioqKioqKioqIFRJTSBJbnN0YW5jZXMgOiBBZHZhbmNlZCB0aW1lciBpbnN0YW5jZXMgKioqKioqKioqKioqKioqKioqKi8KICNkZWZpbmUgSVNfVElNX0FEVkFOQ0VEX0lOU1RBTkNFKElOU1RBTkNFKSAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMSkgICB8fCBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpKQotCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICgoSU5TVEFOQ0UpID09IFRJTTgpICAgfHwgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKElOU1RBTkNFKSA9PSBUSU0yMCkpCiAKIC8qKioqKioqKioqKioqKioqKiogVElNIEluc3RhbmNlcyA6IHN1cHBvcnRpbmcgSFNFLzMyIHJlcXVlc3QgaW5zdGFuY2VzICoqKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIElTX1RJTV9IU0UzMl9JTlNUQU5DRShJTlNUQU5DRSkgICAgICAgICAoKChJTlNUQU5DRSkgPT0gVElNMTYpICAgfHwgXApAQCAtMTM5MDcsNCArMTM5NDAsMyBAQAogICAqIEB9CiAgICovCiAKLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9JbmNsdWRlL3N0bTMyZzQ3M3h4LmggYi9JbmNsdWRlL3N0bTMyZzQ3M3h4LmgKaW5kZXggM2QzMzMzMS4uMGI1M2M1NiAxMDA2NDQKLS0tIGEvSW5jbHVkZS9zdG0zMmc0NzN4eC5oCisrKyBiL0luY2x1ZGUvc3RtMzJnNDczeHguaApAQCAtNywxOCArNywxNyBAQAogICAqICAgICAgICAgIFRoaXMgZmlsZSBjb250YWluczoKICAgKiAgICAgICAgICAgLSBEYXRhIHN0cnVjdHVyZXMgYW5kIHRoZSBhZGRyZXNzIG1hcHBpbmcgZm9yIGFsbCBwZXJpcGhlcmFscwogICAqICAgICAgICAgICAtIFBlcmlwaGVyYWwncyByZWdpc3RlcnMgZGVjbGFyYXRpb25zIGFuZCBiaXRzIGRlZmluaXRpb24KLSAgKiAgICAgICAgICAgLSBNYWNyb3MgdG8gYWNjZXNzIHBlcmlwaGVyYWyScyByZWdpc3RlcnMgaGFyZHdhcmUKKyAgKiAgICAgICAgICAgLSBNYWNyb3MgdG8gYWNjZXNzIHBlcmlwaGVyYWwncyByZWdpc3RlcnMgaGFyZHdhcmUKICAgKgogICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgKiBAYXR0ZW50aW9uCiAgICoKLSAgKiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KLSAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+CisgICogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKyAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICAqCi0gICogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi0gICogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQotICAqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKLSAgKiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQorICAqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorICAqIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvZnR3YXJlIGNvbXBvbmVudC4KKyAgKiBJZiBubyBMSUNFTlNFIGZpbGUgY29tZXMgd2l0aCB0aGlzIHNvZnR3YXJlLCBpdCBpcyBwcm92aWRlZCBBUy1JUy4KICAgKgogICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgKi8KQEAgLTQ1LDExICs0NCwxMSBAQAogLyoqCiAgICogQGJyaWVmIENvbmZpZ3VyYXRpb24gb2YgdGhlIENvcnRleC1NNCBQcm9jZXNzb3IgYW5kIENvcmUgUGVyaXBoZXJhbHMKICAgICovCi0jZGVmaW5lIF9fQ000X1JFViAgICAgICAgICAgICAgICAgMHgwMDAxICAvKiE8IENvcnRleC1NNCByZXZpc2lvbiByMHAxICAgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX01QVV9QUkVTRU5UICAgICAgICAgICAgIDEgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0ICAgICAgIC8qITwgU1RNMzJHNFhYIHVzZXMgNCBCaXRzIGZvciB0aGUgUHJpb3JpdHkgTGV2ZWxzICovCi0jZGVmaW5lIF9fVmVuZG9yX1N5c1RpY2tDb25maWcgICAgMCAgICAgICAvKiE8IFNldCB0byAxIGlmIGRpZmZlcmVudCBTeXNUaWNrIENvbmZpZyBpcyB1c2VkICAqLwotI2RlZmluZSBfX0ZQVV9QUkVTRU5UICAgICAgICAgICAgIDEgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDFVICAvKiE8IENvcnRleC1NNCByZXZpc2lvbiByMHAxICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX01QVV9QUkVTRU5UICAgICAgICAgICAgIDFVICAgICAgIC8qITwgU1RNMzJHNFhYIHByb3ZpZGVzIGFuIE1QVSAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgNFUgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KKyNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwVSAgICAgICAvKiE8IFNldCB0byAxIGlmIGRpZmZlcmVudCBTeXNUaWNrIENvbmZpZyBpcyB1c2VkICAqLworI2RlZmluZSBfX0ZQVV9QUkVTRU5UICAgICAgICAgICAgIDFVICAgICAgIC8qITwgRlBVIHByZXNlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCiAKIC8qKgogICAqIEB9CkBAIC0xMDA5LDYgKzEwMDgsMTAgQEAKIH0gVUNQRF9UeXBlRGVmOwogCiAKKy8qKgorICAqIEB9CisgICovCisKIC8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX21lbW9yeV9tYXAKICAgKiBAewogICAqLwpAQCAtMTM1OCw2ICsxMzYxLDE1IEBACiAgICogQHsKICAgKi8KIAorICAvKiogQGFkZHRvZ3JvdXAgSGFyZHdhcmVfQ29uc3RhbnRfRGVmaW5pdGlvbgorICAgICogQHsKKyAgICAqLworI2RlZmluZSBMU0lfU1RBUlRVUF9USU1FIDEzMFUgLyohPCBMU0kgTWF4aW11bSBzdGFydHVwIHRpbWUgaW4gdXMgKi8KKworICAvKioKKyAgICAqIEB9CisgICAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbgogICAqIEB7CiAgICovCkBAIC0xNDUzNSw0ICsxNDU0NywzIEBACiAgICogQH0KICAgKi8KIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJnNDc0eHguaCBiL0luY2x1ZGUvc3RtMzJnNDc0eHguaAppbmRleCA0NjU2Mzc5Li5lMzJmYjllIDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyZzQ3NHh4LmgKKysrIGIvSW5jbHVkZS9zdG0zMmc0NzR4eC5oCkBAIC03LDE4ICs3LDE3IEBACiAgICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOgogICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzCiAgICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbgotICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQorICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBoYXJkd2FyZQogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqIEBhdHRlbnRpb24KICAgKgotICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICoKLSAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLSAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi0gICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCisgICogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorICAqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqLwpAQCAtNDUsMTEgKzQ0LDExIEBACiAvKioKICAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscwogICAgKi8KLSNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDEgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KLSNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCi0jZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMVUgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLworI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogLyoqCiAgICogQH0KQEAgLTE0OTIsNiArMTQ5MSwxNSBAQAogICAqIEB7CiAgICovCiAKKyAgLyoqIEBhZGR0b2dyb3VwIEhhcmR3YXJlX0NvbnN0YW50X0RlZmluaXRpb24KKyAgICAqIEB7CisgICAgKi8KKyNkZWZpbmUgTFNJX1NUQVJUVVBfVElNRSAxMzBVIC8qITwgTFNJIE1heGltdW0gc3RhcnR1cCB0aW1lIGluIHVzICovCisKKyAgLyoqCisgICAgKiBAfQorICAgICovCisKIC8qKiBAYWRkdG9ncm91cCBQZXJpcGhlcmFsX1JlZ2lzdGVyc19CaXRzX0RlZmluaXRpb24KICAgKiBAewogICAqLwpAQCAtODA0Nyw2ICs4MDU1LDggQEAKICNkZWZpbmUgSFJUSU1fUlNUUl9FWFRFVk5UMTBfUG9zICAgICAgKDE4VSkKICNkZWZpbmUgSFJUSU1fUlNUUl9FWFRFVk5UMTBfTXNrICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfRVhURVZOVDEwX1BvcykgICAgICAvKiE8IDB4MDAwNDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9FWFRFVk5UMTAgICAgICAgICAgSFJUSU1fUlNUUl9FWFRFVk5UMTBfTXNrICAgICAgICAgICAgICAgICAvKiE8IEV4dGVybmFsIGV2ZW50IDEwICovCisKKy8qIFNsYXZlIFRpbWVyIEEgcmVzZXQgZW5hYmxlIGJpdHMgdXBvbiBvdGhlciBzbGF2ZSB0aW1lcnMgZXZlbnRzICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQkNNUDFfUG9zICAgICAgICgxOVUpCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQkNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RSX1RJTUJDTVAxX1BvcykgICAgICAgLyohPCAweDAwMDgwMDAwICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQkNNUDEgICAgICAgICAgIEhSVElNX1JTVFJfVElNQkNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMSAqLwpAQCAtODA1Niw2ICs4MDY2LDcgQEAKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QNF9Qb3MgICAgICAgKDIxVSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNQkNNUDRfUG9zKSAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QNCAgICAgICAgICAgSFJUSU1fUlNUUl9USU1CQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSA0ICovCisKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1DQ01QMV9Qb3MgICAgICAgKDIyVSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1DQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNQ0NNUDFfUG9zKSAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1DQ01QMSAgICAgICAgICAgSFJUSU1fUlNUUl9USU1DQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAxICovCkBAIC04MDY1LDYgKzgwNzYsNyBAQAogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVA0X1BvcyAgICAgICAoMjRVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1DQ01QNF9Qb3MpICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVA0ICAgICAgICAgICBIUlRJTV9SU1RSX1RJTUNDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDQgKi8KKwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTURDTVAxX1BvcyAgICAgICAoMjVVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTURDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1EQ01QMV9Qb3MpICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTURDTVAxICAgICAgICAgICBIUlRJTV9SU1RSX1RJTURDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDEgKi8KQEAgLTgwNzQsNiArODA4Niw3IEBACiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDRfUG9zICAgICAgICgyN1UpCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RSX1RJTURDTVA0X1BvcykgICAgICAgLyohPCAweDA4MDAwMDAwICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDQgICAgICAgICAgIEhSVElNX1JTVFJfVElNRENNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgNCAqLworCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRUNNUDFfUG9zICAgICAgICgyOFUpCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RSX1RJTUVDTVAxX1BvcykgICAgICAgLyohPCAweDEwMDAwMDAwICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRUNNUDEgICAgICAgICAgIEhSVElNX1JTVFJfVElNRUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMSAqLwpAQCAtODA4MywxMCArODA5NiwyMzYgQEAKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QNF9Qb3MgICAgICAgKDMwVSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNRUNNUDRfUG9zKSAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QNCAgICAgICAgICAgSFJUSU1fUlNUUl9USU1FQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSA0ICovCisKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1GQ01QMl9Qb3MgICAgICAgKDMxVSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1GQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNRkNNUDJfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1GQ01QMiAgICAgICAgICAgSFJUSU1fUlNUUl9USU1GQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEYgY29tcGFyZSAyICovCiAKKy8qIFNsYXZlIFRpbWVyIEIgcmVzZXQgZW5hYmxlIGJpdHMgdXBvbiBvdGhlciBzbGF2ZSB0aW1lcnMgZXZlbnRzICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVAxX1BvcyAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUFDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QMSAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNQUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QMl9Qb3MgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1BQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDIgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUFDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDRfUG9zICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNQUNNUDRfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVA0ICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1BQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDFfUG9zICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNQ0NNUDFfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVAxICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1DQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVAyX1BvcyAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUNDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNQ0NNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QNF9Qb3MgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1DQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDQgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUNDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QMV9Qb3MgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1EQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDEgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTURDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDJfUG9zICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNRENNUDJfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVAyICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1EQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVA0X1BvcyAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTURDTVA0X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QNCAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNRENNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVAxX1BvcyAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUVDTVAxX1BvcykgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QMSAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNRUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QMl9Qb3MgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1FQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDIgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUVDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDRfUG9zICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNRUNNUDRfUG9zKSAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVA0ICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1FQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRkNNUDJfUG9zICAgICAgICgzMVUpCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUZDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNRkNNUDJfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRkNNUDIgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUZDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRiBjb21wYXJlIDIgKi8KKworLyogU2xhdmUgVGltZXIgQyByZXNldCBlbmFibGUgYml0cyB1cG9uIG90aGVyIHNsYXZlIHRpbWVycyBldmVudHMgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDFfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNQUNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVAxICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1BQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVAyX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUFDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNQUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QNF9Qb3MgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1BQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDQgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUFDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QMV9Qb3MgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1CQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDEgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUJDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDJfUG9zICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNQkNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVAyICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1CQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVA0X1BvcyAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUJDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QNCAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNQkNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVAxX1BvcyAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTURDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QMSAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNRENNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QMl9Qb3MgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1EQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDIgICAgICAgICAgIEhSVElNX1JTVENSX1RJTURDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDRfUG9zICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNRENNUDRfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVA0ICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1EQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDFfUG9zICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNRUNNUDFfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVAxICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1FQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVAyX1BvcyAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUVDTVAyX1BvcykgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNRUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QNF9Qb3MgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1FQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDQgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUVDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1GQ01QMl9Qb3MgICAgICAgKDMxVSkKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1GQ01QMl9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1GQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNRkNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBGIGNvbXBhcmUgMiAqLworCisvKiBTbGF2ZSBUaW1lciBEIHJlc2V0IGVuYWJsZSBiaXRzIHVwb24gb3RoZXIgc2xhdmUgdGltZXJzIGV2ZW50cyAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QMV9Qb3MgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1BQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDEgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUFDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDJfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQUNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVAyICAgICAgICAgICBIUlRJTV9SU1REUl9USU1BQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVA0X1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUFDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QNCAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQUNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVAxX1BvcyAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUJDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QMSAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQkNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QMl9Qb3MgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1CQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDIgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUJDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDRfUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQkNNUDRfUG9zKSAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVA0ICAgICAgICAgICBIUlRJTV9SU1REUl9USU1CQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDFfUG9zICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQ0NNUDFfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVAxICAgICAgICAgICBIUlRJTV9SU1REUl9USU1DQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVAyX1BvcyAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUNDTVAyX1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QMiAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQ0NNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QNF9Qb3MgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1DQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDQgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUNDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QMV9Qb3MgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1FQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDEgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUVDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDJfUG9zICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNRUNNUDJfUG9zKSAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVAyICAgICAgICAgICBIUlRJTV9SU1REUl9USU1FQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVA0X1BvcyAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUVDTVA0X1BvcykgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QNCAgICAgICAgICAgSFJUSU1fUlNURFJfVElNRUNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUZDTVAyX1BvcyAgICAgICAoMzFVKQorI2RlZmluZSBIUlRJTV9SU1REUl9USU1GQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUZDTVAyX1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUZDTVAyICAgICAgICAgICBIUlRJTV9SU1REUl9USU1GQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEYgY29tcGFyZSAyICovCisKKy8qIFNsYXZlIFRpbWVyIEUgcmVzZXQgZW5hYmxlIGJpdHMgdXBvbiBvdGhlciBzbGF2ZSB0aW1lcnMgZXZlbnRzICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVAxX1BvcyAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUFDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QMSAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QMl9Qb3MgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1BQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDIgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUFDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDRfUG9zICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQUNNUDRfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVA0ICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1BQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDFfUG9zICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQkNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVAxICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1CQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVAyX1BvcyAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUJDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QMiAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQkNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QNF9Qb3MgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1CQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDQgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUJDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QMV9Qb3MgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1DQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDEgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUNDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDJfUG9zICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQ0NNUDJfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVAyICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1DQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVA0X1BvcyAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUNDTVA0X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QNCAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQ0NNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVAxX1BvcyAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTURDTVAxX1BvcykgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QMSAgICAgICAgICAgSFJUSU1fUlNURVJfVElNRENNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QMl9Qb3MgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1EQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDIgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTURDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDRfUG9zICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNRENNUDRfUG9zKSAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVA0ICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1EQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRkNNUDJfUG9zICAgICAgICgzMVUpCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUZDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNRkNNUDJfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRkNNUDIgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUZDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRiBjb21wYXJlIDIgKi8KKworLyogU2xhdmUgVGltZXIgRiByZXNldCBlbmFibGUgYml0cyB1cG9uIG90aGVyIHNsYXZlIHRpbWVycyBldmVudHMgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDFfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQUNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVAxICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1BQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVAyX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUFDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QMiAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QNF9Qb3MgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1BQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDQgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUFDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QMV9Qb3MgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1CQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDEgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUJDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDJfUG9zICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQkNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVAyICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1CQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVA0X1BvcyAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUJDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QNCAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQkNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVAxX1BvcyAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUNDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QMSAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQ0NNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QMl9Qb3MgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1DQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDIgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUNDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDRfUG9zICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQ0NNUDRfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVA0ICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1DQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDFfUG9zICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNRENNUDFfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVAxICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1EQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVAyX1BvcyAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTURDTVAyX1BvcykgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QMiAgICAgICAgICAgSFJUSU1fUlNURlJfVElNRENNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QNF9Qb3MgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1EQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDQgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTURDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1FQ01QMl9Qb3MgICAgICAgKDMxVSkKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1FQ01QMl9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1FQ01QMiAgICAgICAgICAgSFJUSU1fUlNURlJfVElNRUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMiAqLworCiAvKioqKiBCaXQgZGVmaW5pdGlvbiBmb3IgU2xhdmUgVGltZXIgQ2hvcHBlciByZWdpc3RlciAqKioqKioqKioqKioqKioqKioqKioqKioqLwogI2RlZmluZSBIUlRJTV9DSFBSX0NBUkZSUV9Qb3MgICAgICAgICAoMFUpCiAjZGVmaW5lIEhSVElNX0NIUFJfQ0FSRlJRX01zayAgICAgICAgICgweEZVTCA8PCBIUlRJTV9DSFBSX0NBUkZSUV9Qb3MpICAgICAgICAgLyohPCAweDAwMDAwMDBGICovCkBAIC0xNzg4OSw0ICsxODEyOCwzIEBACiAgICogQH0KICAgKi8KIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL0luY2x1ZGUvc3RtMzJnNDgzeHguaCBiL0luY2x1ZGUvc3RtMzJnNDgzeHguaAppbmRleCBjMWJmNWFiLi45MzAwY2YyIDEwMDY0NAotLS0gYS9JbmNsdWRlL3N0bTMyZzQ4M3h4LmgKKysrIGIvSW5jbHVkZS9zdG0zMmc0ODN4eC5oCkBAIC03LDE4ICs3LDE3IEBACiAgICogICAgICAgICAgVGhpcyBmaWxlIGNvbnRhaW5zOgogICAqICAgICAgICAgICAtIERhdGEgc3RydWN0dXJlcyBhbmQgdGhlIGFkZHJlc3MgbWFwcGluZyBmb3IgYWxsIHBlcmlwaGVyYWxzCiAgICogICAgICAgICAgIC0gUGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBkZWNsYXJhdGlvbnMgYW5kIGJpdHMgZGVmaW5pdGlvbgotICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbJJzIHJlZ2lzdGVycyBoYXJkd2FyZQorICAqICAgICAgICAgICAtIE1hY3JvcyB0byBhY2Nlc3MgcGVyaXBoZXJhbCdzIHJlZ2lzdGVycyBoYXJkd2FyZQogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqIEBhdHRlbnRpb24KICAgKgotICAqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKyAgKiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgICoKLSAgKiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLSAgKiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi0gICogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotICAqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCisgICogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCisgICogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorICAqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgogICAqCiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogICAqLwpAQCAtNDUsMTEgKzQ0LDExIEBACiAvKioKICAgKiBAYnJpZWYgQ29uZmlndXJhdGlvbiBvZiB0aGUgQ29ydGV4LU00IFByb2Nlc3NvciBhbmQgQ29yZSBQZXJpcGhlcmFscwogICAgKi8KLSNkZWZpbmUgX19DTTRfUkVWICAgICAgICAgICAgICAgICAweDAwMDEgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLwotI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDQgICAgICAgLyohPCBTVE0zMkc0WFggdXNlcyA0IEJpdHMgZm9yIHRoZSBQcmlvcml0eSBMZXZlbHMgKi8KLSNkZWZpbmUgX19WZW5kb3JfU3lzVGlja0NvbmZpZyAgICAwICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCi0jZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMVUgIC8qITwgQ29ydGV4LU00IHJldmlzaW9uIHIwcDEgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fTVBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBTVE0zMkc0WFggcHJvdmlkZXMgYW4gTVBVICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19OVklDX1BSSU9fQklUUyAgICAgICAgICA0VSAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLworI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDBVICAgICAgIC8qITwgU2V0IHRvIDEgaWYgZGlmZmVyZW50IFN5c1RpY2sgQ29uZmlnIGlzIHVzZWQgICovCisjZGVmaW5lIF9fRlBVX1BSRVNFTlQgICAgICAgICAgICAgMVUgICAgICAgLyohPCBGUFUgcHJlc2VudCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KIAogLyoqCiAgICogQH0KQEAgLTEwNDEsNiArMTA0MCwxMCBAQAogfSBVQ1BEX1R5cGVEZWY7CiAKIAorLyoqCisgICogQH0KKyAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcAogICAqIEB7CiAgICovCkBAIC0xMzkyLDYgKzEzOTUsMTUgQEAKICAgKiBAewogICAqLwogCisgIC8qKiBAYWRkdG9ncm91cCBIYXJkd2FyZV9Db25zdGFudF9EZWZpbml0aW9uCisgICAgKiBAeworICAgICovCisjZGVmaW5lIExTSV9TVEFSVFVQX1RJTUUgMTMwVSAvKiE8IExTSSBNYXhpbXVtIHN0YXJ0dXAgdGltZSBpbiB1cyAqLworCisgIC8qKgorICAgICogQH0KKyAgICAqLworCiAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uCiAgICogQHsKICAgKi8KQEAgLTE0NzY3LDQgKzE0Nzc5LDMgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zdG0zMmc0ODR4eC5oIGIvSW5jbHVkZS9zdG0zMmc0ODR4eC5oCmluZGV4IDQwMmI4ZTMuLjk2ODdiMDEgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc3RtMzJnNDg0eHguaAorKysgYi9JbmNsdWRlL3N0bTMyZzQ4NHh4LmgKQEAgLTcsMTggKzcsMTcgQEAKICAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnM6CiAgICogICAgICAgICAgIC0gRGF0YSBzdHJ1Y3R1cmVzIGFuZCB0aGUgYWRkcmVzcyBtYXBwaW5nIGZvciBhbGwgcGVyaXBoZXJhbHMKICAgKiAgICAgICAgICAgLSBQZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGRlY2xhcmF0aW9ucyBhbmQgYml0cyBkZWZpbml0aW9uCi0gICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsknMgcmVnaXN0ZXJzIGhhcmR3YXJlCisgICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGhhcmR3YXJlCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00NSwxMSArNDQsMTEgQEAKIC8qKgogICAqIEBicmllZiBDb25maWd1cmF0aW9uIG9mIHRoZSBDb3J0ZXgtTTQgUHJvY2Vzc29yIGFuZCBDb3JlIFBlcmlwaGVyYWxzCiAgICAqLwotI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgU1RNMzJHNFhYIHByb3ZpZGVzIGFuIE1QVSAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgNCAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLwotI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDAgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KLSNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgRlBVIHByZXNlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fQ000X1JFViAgICAgICAgICAgICAgICAgMHgwMDAxVSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAgIC8qITwgU1RNMzJHNFhYIHVzZXMgNCBCaXRzIGZvciB0aGUgUHJpb3JpdHkgTGV2ZWxzICovCisjZGVmaW5lIF9fVmVuZG9yX1N5c1RpY2tDb25maWcgICAgMFUgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KKyNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogCiAvKioKICAgKiBAfQpAQCAtMTUyNiw2ICsxNTI1LDE1IEBACiAgICogQHsKICAgKi8KIAorICAvKiogQGFkZHRvZ3JvdXAgSGFyZHdhcmVfQ29uc3RhbnRfRGVmaW5pdGlvbgorICAgICogQHsKKyAgICAqLworI2RlZmluZSBMU0lfU1RBUlRVUF9USU1FIDEzMFUgLyohPCBMU0kgTWF4aW11bSBzdGFydHVwIHRpbWUgaW4gdXMgKi8KKworICAvKioKKyAgICAqIEB9CisgICAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfUmVnaXN0ZXJzX0JpdHNfRGVmaW5pdGlvbgogICAqIEB7CiAgICovCkBAIC04MjY4LDYgKzgyNzYsOCBAQAogI2RlZmluZSBIUlRJTV9SU1RSX0VYVEVWTlQxMF9Qb3MgICAgICAoMThVKQogI2RlZmluZSBIUlRJTV9SU1RSX0VYVEVWTlQxMF9Nc2sgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9FWFRFVk5UMTBfUG9zKSAgICAgIC8qITwgMHgwMDA0MDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX0VYVEVWTlQxMCAgICAgICAgICBIUlRJTV9SU1RSX0VYVEVWTlQxMF9Nc2sgICAgICAgICAgICAgICAgIC8qITwgRXh0ZXJuYWwgZXZlbnQgMTAgKi8KKworLyogU2xhdmUgVGltZXIgQSByZXNldCBlbmFibGUgYml0cyB1cG9uIG90aGVyIHNsYXZlIHRpbWVycyBldmVudHMgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QMV9Qb3MgICAgICAgKDE5VSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNQkNNUDFfUG9zKSAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1CQ01QMSAgICAgICAgICAgSFJUSU1fUlNUUl9USU1CQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAxICovCkBAIC04Mjc3LDYgKzgyODcsNyBAQAogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUJDTVA0X1BvcyAgICAgICAoMjFVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUJDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1CQ01QNF9Qb3MpICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUJDTVA0ICAgICAgICAgICBIUlRJTV9SU1RSX1RJTUJDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDQgKi8KKwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVAxX1BvcyAgICAgICAoMjJVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1DQ01QMV9Qb3MpICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUNDTVAxICAgICAgICAgICBIUlRJTV9SU1RSX1RJTUNDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDEgKi8KQEAgLTgyODYsNiArODI5Nyw3IEBACiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQ0NNUDRfUG9zICAgICAgICgyNFUpCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQ0NNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RSX1RJTUNDTVA0X1BvcykgICAgICAgLyohPCAweDAxMDAwMDAwICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNQ0NNUDQgICAgICAgICAgIEhSVElNX1JTVFJfVElNQ0NNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgNCAqLworCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDFfUG9zICAgICAgICgyNVUpCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RSX1RJTURDTVAxX1BvcykgICAgICAgLyohPCAweDAyMDAwMDAwICovCiAjZGVmaW5lIEhSVElNX1JTVFJfVElNRENNUDEgICAgICAgICAgIEhSVElNX1JTVFJfVElNRENNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMSAqLwpAQCAtODI5NSw2ICs4MzA3LDcgQEAKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1EQ01QNF9Qb3MgICAgICAgKDI3VSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1EQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNRENNUDRfUG9zKSAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1EQ01QNCAgICAgICAgICAgSFJUSU1fUlNUUl9USU1EQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSA0ICovCisKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QMV9Qb3MgICAgICAgKDI4VSkKICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVFJfVElNRUNNUDFfUG9zKSAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KICNkZWZpbmUgSFJUSU1fUlNUUl9USU1FQ01QMSAgICAgICAgICAgSFJUSU1fUlNUUl9USU1FQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAxICovCkBAIC04MzA0LDEwICs4MzE3LDIzNiBAQAogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUVDTVA0X1BvcyAgICAgICAoMzBVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUVDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1FQ01QNF9Qb3MpICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUVDTVA0ICAgICAgICAgICBIUlRJTV9SU1RSX1RJTUVDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDQgKi8KKwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUZDTVAyX1BvcyAgICAgICAoMzFVKQogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUZDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUUl9USU1GQ01QMl9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLwogI2RlZmluZSBIUlRJTV9SU1RSX1RJTUZDTVAyICAgICAgICAgICBIUlRJTV9SU1RSX1RJTUZDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRiBjb21wYXJlIDIgKi8KIAorLyogU2xhdmUgVGltZXIgQiByZXNldCBlbmFibGUgYml0cyB1cG9uIG90aGVyIHNsYXZlIHRpbWVycyBldmVudHMgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDFfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNQUNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVAxICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1BQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUFDTVAyX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUFDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNQUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1BQ01QNF9Qb3MgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1BQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQUNNUDQgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUFDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QMV9Qb3MgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1DQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDEgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUNDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNQ0NNUDJfUG9zICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNQ0NNUDJfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVAyICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1DQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUNDTVA0X1BvcyAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUNDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1DQ01QNCAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNQ0NNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVAxX1BvcyAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTURDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QMSAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNRENNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1EQ01QMl9Qb3MgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1EQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDIgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTURDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRENNUDRfUG9zICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNRENNUDRfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTURDTVA0ICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1EQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDFfUG9zICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQlJfVElNRUNNUDFfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVAxICAgICAgICAgICBIUlRJTV9SU1RCUl9USU1FQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEJSX1RJTUVDTVAyX1BvcyAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEJSX1RJTUVDTVAyX1BvcykgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNRUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1FQ01QNF9Qb3MgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1FQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRUNNUDQgICAgICAgICAgIEhSVElNX1JTVEJSX1RJTUVDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1GQ01QMl9Qb3MgICAgICAgKDMxVSkKKyNkZWZpbmUgSFJUSU1fUlNUQlJfVElNRkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RCUl9USU1GQ01QMl9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RCUl9USU1GQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQlJfVElNRkNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBGIGNvbXBhcmUgMiAqLworCisvKiBTbGF2ZSBUaW1lciBDIHJlc2V0IGVuYWJsZSBiaXRzIHVwb24gb3RoZXIgc2xhdmUgdGltZXJzIGV2ZW50cyAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QMV9Qb3MgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1BQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDEgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUFDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQUNNUDJfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNQUNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVAyICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1BQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUFDTVA0X1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUFDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1BQ01QNCAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNQUNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVAxX1BvcyAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUJDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QMSAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNQkNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1CQ01QMl9Qb3MgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1CQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDIgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUJDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNQkNNUDRfUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNQkNNUDRfUG9zKSAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUJDTVA0ICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1CQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDFfUG9zICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNRENNUDFfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVAxICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1EQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTURDTVAyX1BvcyAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTURDTVAyX1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QMiAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNRENNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1EQ01QNF9Qb3MgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1EQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRENNUDQgICAgICAgICAgIEhSVElNX1JTVENSX1RJTURDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QMV9Qb3MgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RDUl9USU1FQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDEgICAgICAgICAgIEhSVElNX1JTVENSX1RJTUVDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNUQ1JfVElNRUNNUDJfUG9zICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNUQ1JfVElNRUNNUDJfUG9zKSAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVAyICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1FQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUVDTVA0X1BvcyAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUVDTVA0X1BvcykgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RDUl9USU1FQ01QNCAgICAgICAgICAgSFJUSU1fUlNUQ1JfVElNRUNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUZDTVAyX1BvcyAgICAgICAoMzFVKQorI2RlZmluZSBIUlRJTV9SU1RDUl9USU1GQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVENSX1RJTUZDTVAyX1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVENSX1RJTUZDTVAyICAgICAgICAgICBIUlRJTV9SU1RDUl9USU1GQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEYgY29tcGFyZSAyICovCisKKy8qIFNsYXZlIFRpbWVyIEQgcmVzZXQgZW5hYmxlIGJpdHMgdXBvbiBvdGhlciBzbGF2ZSB0aW1lcnMgZXZlbnRzICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVAxX1BvcyAgICAgICAoMTlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUFDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDA4MDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QMSAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1BQ01QMl9Qb3MgICAgICAgKDIwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1BQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDAxMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDIgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUFDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQUNNUDRfUG9zICAgICAgICgyMVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQUNNUDRfUG9zKSAgICAgICAgLyohPCAweDAwMjAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUFDTVA0ICAgICAgICAgICBIUlRJTV9SU1REUl9USU1BQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDFfUG9zICAgICAgICgyMlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQkNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwNDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVAxICAgICAgICAgICBIUlRJTV9SU1REUl9USU1CQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUJDTVAyX1BvcyAgICAgICAoMjNVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUJDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDgwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QMiAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQkNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1CQ01QNF9Qb3MgICAgICAgKDI0VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1CQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDEwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQkNNUDQgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUJDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QMV9Qb3MgICAgICAgKDI1VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1DQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDIwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDEgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUNDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNQ0NNUDJfUG9zICAgICAgICgyNlUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNQ0NNUDJfUG9zKSAgICAgICAgLyohPCAweDA0MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVAyICAgICAgICAgICBIUlRJTV9SU1REUl9USU1DQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUNDTVA0X1BvcyAgICAgICAoMjdVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUNDTVA0X1BvcykgICAgICAgIC8qITwgMHgwODAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1DQ01QNCAgICAgICAgICAgSFJUSU1fUlNURFJfVElNQ0NNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVAxX1BvcyAgICAgICAoMjhVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVERSX1RJTUVDTVAxX1BvcykgICAgICAgIC8qITwgMHgxMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QMSAgICAgICAgICAgSFJUSU1fUlNURFJfVElNRUNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBFIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1REUl9USU1FQ01QMl9Qb3MgICAgICAgKDI5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1REUl9USU1FQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MjAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDIgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUVDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRSBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRUNNUDRfUG9zICAgICAgICgzMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNRUNNUDRfUG9zKSAgICAgICAgLyohPCAweDQwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUVDTVA0ICAgICAgICAgICBIUlRJTV9SU1REUl9USU1FQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRkNNUDJfUG9zICAgICAgICgzMVUpCisjZGVmaW5lIEhSVElNX1JTVERSX1RJTUZDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURFJfVElNRkNNUDJfUG9zKSAgICAgICAvKiE8IDB4ODAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURFJfVElNRkNNUDIgICAgICAgICAgIEhSVElNX1JTVERSX1RJTUZDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRiBjb21wYXJlIDIgKi8KKworLyogU2xhdmUgVGltZXIgRSByZXNldCBlbmFibGUgYml0cyB1cG9uIG90aGVyIHNsYXZlIHRpbWVycyBldmVudHMgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDFfUG9zICAgICAgICgxOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQUNNUDFfUG9zKSAgICAgICAgLyohPCAweDAwMDgwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVAxICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1BQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUFDTVAyX1BvcyAgICAgICAoMjBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUFDTVAyX1BvcykgICAgICAgIC8qITwgMHgwMDEwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QMiAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQUNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1BQ01QNF9Qb3MgICAgICAgKDIxVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1BQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDAyMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQUNNUDQgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUFDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QMV9Qb3MgICAgICAgKDIyVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1CQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDA0MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDEgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUJDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQkNNUDJfUG9zICAgICAgICgyM1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQkNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwODAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVAyICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1CQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUJDTVA0X1BvcyAgICAgICAoMjRVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUJDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMTAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1CQ01QNCAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQkNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVAxX1BvcyAgICAgICAoMjVVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTUNDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMjAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QMSAgICAgICAgICAgSFJUSU1fUlNURVJfVElNQ0NNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1DQ01QMl9Qb3MgICAgICAgKDI2VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1DQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDQwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDIgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTUNDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNQ0NNUDRfUG9zICAgICAgICgyN1UpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNQ0NNUDRfUG9zKSAgICAgICAgLyohPCAweDA4MDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTUNDTVA0ICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1DQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDFfUG9zICAgICAgICgyOFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURVJfVElNRENNUDFfUG9zKSAgICAgICAgLyohPCAweDEwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVAxICAgICAgICAgICBIUlRJTV9SU1RFUl9USU1EQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEVSX1RJTURDTVAyX1BvcyAgICAgICAoMjlVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEVSX1RJTURDTVAyX1BvcykgICAgICAgIC8qITwgMHgyMDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QMiAgICAgICAgICAgSFJUSU1fUlNURVJfVElNRENNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1EQ01QNF9Qb3MgICAgICAgKDMwVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1EQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4NDAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRENNUDQgICAgICAgICAgIEhSVElNX1JTVEVSX1RJTURDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1GQ01QMl9Qb3MgICAgICAgKDMxVSkKKyNkZWZpbmUgSFJUSU1fUlNURVJfVElNRkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RFUl9USU1GQ01QMl9Qb3MpICAgICAgIC8qITwgMHg4MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RFUl9USU1GQ01QMiAgICAgICAgICAgSFJUSU1fUlNURVJfVElNRkNNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBGIGNvbXBhcmUgMiAqLworCisvKiBTbGF2ZSBUaW1lciBGIHJlc2V0IGVuYWJsZSBiaXRzIHVwb24gb3RoZXIgc2xhdmUgdGltZXJzIGV2ZW50cyAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QMV9Qb3MgICAgICAgKDE5VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1BQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MDAwODAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDEgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUFDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQSBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQUNNUDJfUG9zICAgICAgICgyMFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQUNNUDJfUG9zKSAgICAgICAgLyohPCAweDAwMTAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVAyICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1BQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEEgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUFDTVA0X1BvcyAgICAgICAoMjFVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUFDTVA0X1BvcykgICAgICAgIC8qITwgMHgwMDIwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1BQ01QNCAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQUNNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBBIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVAxX1BvcyAgICAgICAoMjJVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QMV9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUJDTVAxX1BvcykgICAgICAgIC8qITwgMHgwMDQwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QMSAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQkNNUDFfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBCIGNvbXBhcmUgMSAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1CQ01QMl9Qb3MgICAgICAgKDIzVSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDJfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1CQ01QMl9Qb3MpICAgICAgICAvKiE8IDB4MDA4MDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDIgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUJDTVAyX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQiBjb21wYXJlIDIgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQkNNUDRfUG9zICAgICAgICgyNFUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVA0X01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQkNNUDRfUG9zKSAgICAgICAgLyohPCAweDAxMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUJDTVA0ICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1CQ01QNF9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEIgY29tcGFyZSA0ICovCisKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDFfUG9zICAgICAgICgyNVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVAxX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNQ0NNUDFfUG9zKSAgICAgICAgLyohPCAweDAyMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVAxICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1DQ01QMV9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEMgY29tcGFyZSAxICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUNDTVAyX1BvcyAgICAgICAoMjZVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUNDTVAyX1BvcykgICAgICAgIC8qITwgMHgwNDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QMiAgICAgICAgICAgSFJUSU1fUlNURlJfVElNQ0NNUDJfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBDIGNvbXBhcmUgMiAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1DQ01QNF9Qb3MgICAgICAgKDI3VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDRfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1DQ01QNF9Qb3MpICAgICAgICAvKiE8IDB4MDgwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNQ0NNUDQgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTUNDTVA0X01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgQyBjb21wYXJlIDQgKi8KKworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QMV9Qb3MgICAgICAgKDI4VSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDFfTXNrICAgICAgICgweDFVTCA8PCBIUlRJTV9SU1RGUl9USU1EQ01QMV9Qb3MpICAgICAgICAvKiE8IDB4MTAwMDAwMDAgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDEgICAgICAgICAgIEhSVElNX1JTVEZSX1RJTURDTVAxX01zayAgICAgICAgICAgICAgICAgIC8qITwgVGltZXIgRCBjb21wYXJlIDEgKi8KKyNkZWZpbmUgSFJUSU1fUlNURlJfVElNRENNUDJfUG9zICAgICAgICgyOVUpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVAyX01zayAgICAgICAoMHgxVUwgPDwgSFJUSU1fUlNURlJfVElNRENNUDJfUG9zKSAgICAgICAgLyohPCAweDIwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVAyICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1EQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEQgY29tcGFyZSAyICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTURDTVA0X1BvcyAgICAgICAoMzBVKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QNF9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTURDTVA0X1BvcykgICAgICAgIC8qITwgMHg0MDAwMDAwMCAqLworI2RlZmluZSBIUlRJTV9SU1RGUl9USU1EQ01QNCAgICAgICAgICAgSFJUSU1fUlNURlJfVElNRENNUDRfTXNrICAgICAgICAgICAgICAgICAgLyohPCBUaW1lciBEIGNvbXBhcmUgNCAqLworCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUVDTVAyX1BvcyAgICAgICAoMzFVKQorI2RlZmluZSBIUlRJTV9SU1RGUl9USU1FQ01QMl9Nc2sgICAgICAgKDB4MVVMIDw8IEhSVElNX1JTVEZSX1RJTUVDTVAyX1BvcykgICAgICAgLyohPCAweDgwMDAwMDAwICovCisjZGVmaW5lIEhSVElNX1JTVEZSX1RJTUVDTVAyICAgICAgICAgICBIUlRJTV9SU1RGUl9USU1FQ01QMl9Nc2sgICAgICAgICAgICAgICAgICAvKiE8IFRpbWVyIEUgY29tcGFyZSAyICovCisKIC8qKioqIEJpdCBkZWZpbml0aW9uIGZvciBTbGF2ZSBUaW1lciBDaG9wcGVyIHJlZ2lzdGVyICoqKioqKioqKioqKioqKioqKioqKioqKiovCiAjZGVmaW5lIEhSVElNX0NIUFJfQ0FSRlJRX1BvcyAgICAgICAgICgwVSkKICNkZWZpbmUgSFJUSU1fQ0hQUl9DQVJGUlFfTXNrICAgICAgICAgKDB4RlVMIDw8IEhSVElNX0NIUFJfQ0FSRlJRX1BvcykgICAgICAgICAvKiE8IDB4MDAwMDAwMEYgKi8KQEAgLTE4MTIxLDQgKzE4MzYwLDMgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zdG0zMmc0OTF4eC5oIGIvSW5jbHVkZS9zdG0zMmc0OTF4eC5oCmluZGV4IGY1OTI3YWEuLmNhOTg3NGIgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc3RtMzJnNDkxeHguaAorKysgYi9JbmNsdWRlL3N0bTMyZzQ5MXh4LmgKQEAgLTcsMTggKzcsMTcgQEAKICAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnM6CiAgICogICAgICAgICAgIC0gRGF0YSBzdHJ1Y3R1cmVzIGFuZCB0aGUgYWRkcmVzcyBtYXBwaW5nIGZvciBhbGwgcGVyaXBoZXJhbHMKICAgKiAgICAgICAgICAgLSBQZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGRlY2xhcmF0aW9ucyBhbmQgYml0cyBkZWZpbml0aW9uCi0gICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsknMgcmVnaXN0ZXJzIGhhcmR3YXJlCisgICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGhhcmR3YXJlCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00NSwxMSArNDQsMTEgQEAKIC8qKgogICAqIEBicmllZiBDb25maWd1cmF0aW9uIG9mIHRoZSBDb3J0ZXgtTTQgUHJvY2Vzc29yIGFuZCBDb3JlIFBlcmlwaGVyYWxzCiAgICAqLwotI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgU1RNMzJHNFhYIHByb3ZpZGVzIGFuIE1QVSAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgNCAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLwotI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDAgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KLSNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgRlBVIHByZXNlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fQ000X1JFViAgICAgICAgICAgICAgICAgMHgwMDAxVSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAgIC8qITwgU1RNMzJHNFhYIHVzZXMgNCBCaXRzIGZvciB0aGUgUHJpb3JpdHkgTGV2ZWxzICovCisjZGVmaW5lIF9fVmVuZG9yX1N5c1RpY2tDb25maWcgICAgMFUgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KKyNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogCiAvKioKICAgKiBAfQpAQCAtOTYxLDYgKzk2MCwxMCBAQAogfSBVQ1BEX1R5cGVEZWY7CiAKIAorLyoqCisgICogQH0KKyAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcAogICAqIEB7CiAgICovCkBAIC0xMjY5LDYgKzEyNzIsMTUgQEAKICAgKiBAewogICAqLwogCisgIC8qKiBAYWRkdG9ncm91cCBIYXJkd2FyZV9Db25zdGFudF9EZWZpbml0aW9uCisgICAgKiBAeworICAgICovCisjZGVmaW5lIExTSV9TVEFSVFVQX1RJTUUgMTMwVSAvKiE8IExTSSBNYXhpbXVtIHN0YXJ0dXAgdGltZSBpbiB1cyAqLworCisgIC8qKgorICAgICogQH0KKyAgICAqLworCiAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uCiAgICogQHsKICAgKi8KQEAgLTEzNjk5LDQgKzEzNzExLDMgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zdG0zMmc0YTF4eC5oIGIvSW5jbHVkZS9zdG0zMmc0YTF4eC5oCmluZGV4IGZlYWU5ZjIuLjJmYjZlNmYgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc3RtMzJnNGExeHguaAorKysgYi9JbmNsdWRlL3N0bTMyZzRhMXh4LmgKQEAgLTcsMTggKzcsMTcgQEAKICAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnM6CiAgICogICAgICAgICAgIC0gRGF0YSBzdHJ1Y3R1cmVzIGFuZCB0aGUgYWRkcmVzcyBtYXBwaW5nIGZvciBhbGwgcGVyaXBoZXJhbHMKICAgKiAgICAgICAgICAgLSBQZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGRlY2xhcmF0aW9ucyBhbmQgYml0cyBkZWZpbml0aW9uCi0gICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsknMgcmVnaXN0ZXJzIGhhcmR3YXJlCisgICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGhhcmR3YXJlCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00NSwxMSArNDQsMTEgQEAKIC8qKgogICAqIEBicmllZiBDb25maWd1cmF0aW9uIG9mIHRoZSBDb3J0ZXgtTTQgUHJvY2Vzc29yIGFuZCBDb3JlIFBlcmlwaGVyYWxzCiAgICAqLwotI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgU1RNMzJHNFhYIHByb3ZpZGVzIGFuIE1QVSAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgNCAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLwotI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDAgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KLSNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgRlBVIHByZXNlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fQ000X1JFViAgICAgICAgICAgICAgICAgMHgwMDAxVSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAgIC8qITwgU1RNMzJHNFhYIHVzZXMgNCBCaXRzIGZvciB0aGUgUHJpb3JpdHkgTGV2ZWxzICovCisjZGVmaW5lIF9fVmVuZG9yX1N5c1RpY2tDb25maWcgICAgMFUgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KKyNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogCiAvKioKICAgKiBAfQpAQCAtOTkzLDYgKzk5MiwxMCBAQAogfSBVQ1BEX1R5cGVEZWY7CiAKIAorLyoqCisgICogQH0KKyAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcAogICAqIEB7CiAgICovCkBAIC0xMzAzLDYgKzEzMDYsMTUgQEAKICAgKiBAewogICAqLwogCisgIC8qKiBAYWRkdG9ncm91cCBIYXJkd2FyZV9Db25zdGFudF9EZWZpbml0aW9uCisgICAgKiBAeworICAgICovCisjZGVmaW5lIExTSV9TVEFSVFVQX1RJTUUgMTMwVSAvKiE8IExTSSBNYXhpbXVtIHN0YXJ0dXAgdGltZSBpbiB1cyAqLworCisgIC8qKgorICAgICogQH0KKyAgICAqLworCiAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uCiAgICogQHsKICAgKi8KQEAgLTEzOTMxLDQgKzEzOTQzLDMgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zdG0zMmc0eHguaCBiL0luY2x1ZGUvc3RtMzJnNHh4LmgKaW5kZXggNjVkMzU1OS4uMTQ0YWE2MCAxMDA2NDQKLS0tIGEvSW5jbHVkZS9zdG0zMmc0eHguaAorKysgYi9JbmNsdWRlL3N0bTMyZzR4eC5oCkBAIC0xNiwxMyArMTYsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC04NSwxMSArODQsMTEgQEAKICNlbmRpZiAvKiBVU0VfSEFMX0RSSVZFUiAqLwogCiAvKioKLSAgKiBAYnJpZWYgQ01TSVMgRGV2aWNlIHZlcnNpb24gbnVtYmVyIFYxLjIuMQorICAqIEBicmllZiBDTVNJUyBEZXZpY2UgdmVyc2lvbiBudW1iZXIgVjEuMi4yCiAgICovCiAjZGVmaW5lIF9fU1RNMzJHNF9DTVNJU19WRVJTSU9OX01BSU4gICAoMHgwMVUpIC8qITwgWzMxOjI0XSBtYWluIHZlcnNpb24gKi8KICNkZWZpbmUgX19TVE0zMkc0X0NNU0lTX1ZFUlNJT05fU1VCMSAgICgweDAyVSkgLyohPCBbMjM6MTZdIHN1YjEgdmVyc2lvbiAqLwotI2RlZmluZSBfX1NUTTMyRzRfQ01TSVNfVkVSU0lPTl9TVUIyICAgKDB4MDFVKSAvKiE8IFsxNTo4XSAgc3ViMiB2ZXJzaW9uICovCisjZGVmaW5lIF9fU1RNMzJHNF9DTVNJU19WRVJTSU9OX1NVQjIgICAoMHgwMlUpIC8qITwgWzE1OjhdICBzdWIyIHZlcnNpb24gKi8KICNkZWZpbmUgX19TVE0zMkc0X0NNU0lTX1ZFUlNJT05fUkMgICAgICgweDAwVSkgLyohPCBbNzowXSAgcmVsZWFzZSBjYW5kaWRhdGUgKi8KICNkZWZpbmUgX19TVE0zMkc0X0NNU0lTX1ZFUlNJT04gICAgICAgICgoX19TVE0zMkc0X0NNU0lTX1ZFUlNJT05fTUFJTiA8PCAyNClcCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8KF9fU1RNMzJHNF9DTVNJU19WRVJTSU9OX1NVQjEgPDwgMTYpXApAQCAtMTc4LDYgKzE3Nyw2MSBAQAogCiAjZGVmaW5lIFBPU0lUSU9OX1ZBTChWQUwpICAgICAoX19DTFooX19SQklUKFZBTCkpKQogCisvKiBVc2Ugb2YgQ01TSVMgY29tcGlsZXIgaW50cmluc2ljcyBmb3IgcmVnaXN0ZXIgZXhjbHVzaXZlIGFjY2VzcyAqLworLyogQXRvbWljIDMyLWJpdCByZWdpc3RlciBhY2Nlc3MgbWFjcm8gdG8gc2V0IG9uZSBvciBzZXZlcmFsIGJpdHMgKi8KKyNkZWZpbmUgQVRPTUlDX1NFVF9CSVQoUkVHLCBCSVQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHVpbnQzMl90IHZhbDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICB2YWwgPSBfX0xEUkVYVygoX19JTyB1aW50MzJfdCAqKSYoUkVHKSkgfCAoQklUKTsgICAgICAgXAorICAgIH0gd2hpbGUgKChfX1NUUkVYVyh2YWwsKF9fSU8gdWludDMyX3QgKikmKFJFRykpKSAhPSAwVSk7IFwKKyAgfSB3aGlsZSgwKQorCisvKiBBdG9taWMgMzItYml0IHJlZ2lzdGVyIGFjY2VzcyBtYWNybyB0byBjbGVhciBvbmUgb3Igc2V2ZXJhbCBiaXRzICovCisjZGVmaW5lIEFUT01JQ19DTEVBUl9CSVQoUkVHLCBCSVQpICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB1aW50MzJfdCB2YWw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgdmFsID0gX19MRFJFWFcoKF9fSU8gdWludDMyX3QgKikmKFJFRykpICYgfihCSVQpOyAgICAgIFwKKyAgICB9IHdoaWxlICgoX19TVFJFWFcodmFsLChfX0lPIHVpbnQzMl90ICopJihSRUcpKSkgIT0gMFUpOyBcCisgIH0gd2hpbGUoMCkKKworLyogQXRvbWljIDMyLWJpdCByZWdpc3RlciBhY2Nlc3MgbWFjcm8gdG8gY2xlYXIgYW5kIHNldCBvbmUgb3Igc2V2ZXJhbCBiaXRzICovCisjZGVmaW5lIEFUT01JQ19NT0RJRllfUkVHKFJFRywgQ0xFQVJNU0ssIFNFVE1BU0spICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdWludDMyX3QgdmFsOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICB2YWwgPSAoX19MRFJFWFcoKF9fSU8gdWludDMyX3QgKikmKFJFRykpICYgfihDTEVBUk1TSykpIHwgKFNFVE1BU0spOyBcCisgICAgfSB3aGlsZSAoKF9fU1RSRVhXKHZhbCwoX19JTyB1aW50MzJfdCAqKSYoUkVHKSkpICE9IDBVKTsgICAgICAgICAgICAgICBcCisgIH0gd2hpbGUoMCkKKworLyogQXRvbWljIDE2LWJpdCByZWdpc3RlciBhY2Nlc3MgbWFjcm8gdG8gc2V0IG9uZSBvciBzZXZlcmFsIGJpdHMgKi8KKyNkZWZpbmUgQVRPTUlDX1NFVEhfQklUKFJFRywgQklUKSAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgIHVpbnQxNl90IHZhbDsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICB2YWwgPSBfX0xEUkVYSCgoX19JTyB1aW50MTZfdCAqKSYoUkVHKSkgfCAoQklUKTsgICAgICAgXAorICAgIH0gd2hpbGUgKChfX1NUUkVYSCh2YWwsKF9fSU8gdWludDE2X3QgKikmKFJFRykpKSAhPSAwVSk7IFwKKyAgfSB3aGlsZSgwKQorCisvKiBBdG9taWMgMTYtYml0IHJlZ2lzdGVyIGFjY2VzcyBtYWNybyB0byBjbGVhciBvbmUgb3Igc2V2ZXJhbCBiaXRzICovCisjZGVmaW5lIEFUT01JQ19DTEVBUkhfQklUKFJFRywgQklUKSAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICBkbyB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKKyAgICB1aW50MTZfdCB2YWw7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgdmFsID0gX19MRFJFWEgoKF9fSU8gdWludDE2X3QgKikmKFJFRykpICYgfihCSVQpOyAgICAgIFwKKyAgICB9IHdoaWxlICgoX19TVFJFWEgodmFsLChfX0lPIHVpbnQxNl90ICopJihSRUcpKSkgIT0gMFUpOyBcCisgIH0gd2hpbGUoMCkKKworLyogQXRvbWljIDE2LWJpdCByZWdpc3RlciBhY2Nlc3MgbWFjcm8gdG8gY2xlYXIgYW5kIHNldCBvbmUgb3Igc2V2ZXJhbCBiaXRzICovCisjZGVmaW5lIEFUT01JQ19NT0RJRllIX1JFRyhSRUcsIENMRUFSTVNLLCBTRVRNQVNLKSAgICAgICAgICAgICAgICAgICAgICAgICBcCisgIGRvIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgdWludDE2X3QgdmFsOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgZG8geyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCisgICAgICB2YWwgPSAoX19MRFJFWEgoKF9fSU8gdWludDE2X3QgKikmKFJFRykpICYgfihDTEVBUk1TSykpIHwgKFNFVE1BU0spOyBcCisgICAgfSB3aGlsZSAoKF9fU1RSRVhIKHZhbCwoX19JTyB1aW50MTZfdCAqKSYoUkVHKSkpICE9IDBVKTsgICAgICAgICAgICAgICBcCisgIH0gd2hpbGUoMCkKKwogCiAvKioKICAgKiBAfQpAQCAtMjAzLDQgKzI1NywzIEBACiAKIAogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zdG0zMmdiazFjYi5oIGIvSW5jbHVkZS9zdG0zMmdiazFjYi5oCmluZGV4IDc2NzgxNzIuLmE5ZDhjZjAgMTAwNjQ0Ci0tLSBhL0luY2x1ZGUvc3RtMzJnYmsxY2IuaAorKysgYi9JbmNsdWRlL3N0bTMyZ2JrMWNiLmgKQEAgLTcsMTggKzcsMTcgQEAKICAgKiAgICAgICAgICBUaGlzIGZpbGUgY29udGFpbnM6CiAgICogICAgICAgICAgIC0gRGF0YSBzdHJ1Y3R1cmVzIGFuZCB0aGUgYWRkcmVzcyBtYXBwaW5nIGZvciBhbGwgcGVyaXBoZXJhbHMKICAgKiAgICAgICAgICAgLSBQZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGRlY2xhcmF0aW9ucyBhbmQgYml0cyBkZWZpbml0aW9uCi0gICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsknMgcmVnaXN0ZXJzIGhhcmR3YXJlCisgICogICAgICAgICAgIC0gTWFjcm9zIHRvIGFjY2VzcyBwZXJpcGhlcmFsJ3MgcmVnaXN0ZXJzIGhhcmR3YXJlCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00NSwxMSArNDQsMTEgQEAKIC8qKgogICAqIEBicmllZiBDb25maWd1cmF0aW9uIG9mIHRoZSBDb3J0ZXgtTTQgUHJvY2Vzc29yIGFuZCBDb3JlIFBlcmlwaGVyYWxzCiAgICAqLwotI2RlZmluZSBfX0NNNF9SRVYgICAgICAgICAgICAgICAgIDB4MDAwMSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KLSNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgU1RNMzJHNFhYIHByb3ZpZGVzIGFuIE1QVSAgICAgICAgICAgICAgICAgICAgICovCi0jZGVmaW5lIF9fTlZJQ19QUklPX0JJVFMgICAgICAgICAgNCAgICAgICAvKiE8IFNUTTMyRzRYWCB1c2VzIDQgQml0cyBmb3IgdGhlIFByaW9yaXR5IExldmVscyAqLwotI2RlZmluZSBfX1ZlbmRvcl9TeXNUaWNrQ29uZmlnICAgIDAgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KLSNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxICAgICAgIC8qITwgRlBVIHByZXNlbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisjZGVmaW5lIF9fQ000X1JFViAgICAgICAgICAgICAgICAgMHgwMDAxVSAgLyohPCBDb3J0ZXgtTTQgcmV2aXNpb24gcjBwMSAgICAgICAgICAgICAgICAgICAgICAgKi8KKyNkZWZpbmUgX19NUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IFNUTTMyRzRYWCBwcm92aWRlcyBhbiBNUFUgICAgICAgICAgICAgICAgICAgICAqLworI2RlZmluZSBfX05WSUNfUFJJT19CSVRTICAgICAgICAgIDRVICAgICAgIC8qITwgU1RNMzJHNFhYIHVzZXMgNCBCaXRzIGZvciB0aGUgUHJpb3JpdHkgTGV2ZWxzICovCisjZGVmaW5lIF9fVmVuZG9yX1N5c1RpY2tDb25maWcgICAgMFUgICAgICAgLyohPCBTZXQgdG8gMSBpZiBkaWZmZXJlbnQgU3lzVGljayBDb25maWcgaXMgdXNlZCAgKi8KKyNkZWZpbmUgX19GUFVfUFJFU0VOVCAgICAgICAgICAgICAxVSAgICAgICAvKiE8IEZQVSBwcmVzZW50ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLwogCiAvKioKICAgKiBAfQpAQCAtOTAyLDYgKzkwMSwxMCBAQAogfSBVQ1BEX1R5cGVEZWY7CiAKIAorLyoqCisgICogQH0KKyAgKi8KKwogLyoqIEBhZGR0b2dyb3VwIFBlcmlwaGVyYWxfbWVtb3J5X21hcAogICAqIEB7CiAgICovCkBAIC0xMTc1LDYgKzExNzgsMTUgQEAKICAgKiBAewogICAqLwogCisgIC8qKiBAYWRkdG9ncm91cCBIYXJkd2FyZV9Db25zdGFudF9EZWZpbml0aW9uCisgICAgKiBAeworICAgICovCisjZGVmaW5lIExTSV9TVEFSVFVQX1RJTUUgMTMwVSAvKiE8IExTSSBNYXhpbXVtIHN0YXJ0dXAgdGltZSBpbiB1cyAqLworCisgIC8qKgorICAgICogQH0KKyAgICAqLworCiAvKiogQGFkZHRvZ3JvdXAgUGVyaXBoZXJhbF9SZWdpc3RlcnNfQml0c19EZWZpbml0aW9uCiAgICogQHsKICAgKi8KQEAgLTEzMDYzLDQgKzEzMDc1LDMgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvSW5jbHVkZS9zeXN0ZW1fc3RtMzJnNHh4LmggYi9JbmNsdWRlL3N5c3RlbV9zdG0zMmc0eHguaAppbmRleCBiNzlhOWI2Li5lZDM0MWE4IDEwMDY0NAotLS0gYS9JbmNsdWRlL3N5c3RlbV9zdG0zMmc0eHguaAorKysgYi9JbmNsdWRlL3N5c3RlbV9zdG0zMmc0eHguaApAQCAtNiwxMyArNiwxMiBAQAogICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgKiBAYXR0ZW50aW9uCiAgICoKLSAgKiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KLSAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+CisgICogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKyAgKiBBbGwgcmlnaHRzIHJlc2VydmVkLgogICAqCi0gICogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi0gICogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQotICAqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKLSAgKiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQorICAqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorICAqIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvZnR3YXJlIGNvbXBvbmVudC4KKyAgKiBJZiBubyBMSUNFTlNFIGZpbGUgY29tZXMgd2l0aCB0aGlzIHNvZnR3YXJlLCBpdCBpcyBwcm92aWRlZCBBUy1JUy4KICAgKgogICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKICAgKi8KQEAgLTEwMyw0ICsxMDIsMyBAQAogLyoqCiAgICogQH0KICAgKi8KLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9MaWNlbnNlLm1kIGIvTGljZW5zZS5tZAppbmRleCBlMGQ4MjliLi40OGRjZDk2IDEwMDY0NAotLS0gYS9MaWNlbnNlLm1kCisrKyBiL0xpY2Vuc2UubWQKQEAgLTY4LDcgKzY4LDcgQEAKIAogQVBQRU5ESVg6CiAKLSAgIENvcHlyaWdodCBbMjAxOV0gW1NUTWljcm9lbGVjdHJvbmljc10KKyAgIENvcHlyaWdodCAyMDE5IFNUTWljcm9lbGVjdHJvbmljcwogCiAgICBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgIkxpY2Vuc2UiKTsKICAgIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4KZGlmZiAtLWdpdCBhL1JFQURNRS5tZCBiL1JFQURNRS5tZAppbmRleCAyM2U0NjVjLi40ODE2Yzg2IDEwMDY0NAotLS0gYS9SRUFETUUubWQKKysrIGIvUkVBRE1FLm1kCkBAIC0yLDE4ICsyLDE4IEBACiAKICMjIE92ZXJ2aWV3CiAKLSoqU1RNMzJDdWJlKiogaXMgYW4gU1RNaWNyb2VsZWN0cm9uaWNzIG9yaWdpbmFsIGluaXRpYXRpdmUgdG8gZWFzZSB0aGUgZGV2ZWxvcGVycyBsaWZlIGJ5IHJlZHVjaW5nIGVmZm9ydHMsIHRpbWUgYW5kIGNvc3QuCisqKlNUTTMyQ3ViZSoqIGlzIGFuIFNUTWljcm9lbGVjdHJvbmljcyBvcmlnaW5hbCBpbml0aWF0aXZlIHRvIGVhc2UgZGV2ZWxvcGVycycgbGlmZSBieSByZWR1Y2luZyBlZmZvcnRzLCB0aW1lIGFuZCBjb3N0LgogCi0qKlNUTTMyQ3ViZSoqIGNvdmVycyB0aGUgb3ZlcmFsbCBTVE0zMiBwcm9kdWN0cyBwb3J0Zm9saW8uIEl0IGluY2x1ZGVzIGEgY29tcHJlaGVuc2l2ZSBlbWJlZGRlZCBzb2Z0d2FyZSBwbGF0Zm9ybSwgZGVsaXZlcmVkIGZvciBlYWNoIFNUTTMyIHNlcmllcy4KLSAgICogVGhlIENNU0lTIG1vZHVsZXMgKGNvcmUgYW5kIGRldmljZSkgY29ycmVzcG9uZGluZyB0byB0aGUgQVJNKHRtKSBjb3JlIGltcGxlbWVudGVkIGluIHRoaXMgU1RNMzIgcHJvZHVjdAotICAgKiBUaGUgU1RNMzIgSEFMLUxMIGRyaXZlcnMgOiBhbiBhYnN0cmFjdGlvbiBkcml2ZXJzIGxheWVyLCB0aGUgQVBJIGVuc3VyaW5nIG1heGltaXplZCBwb3J0YWJpbGl0eSBhY3Jvc3MgdGhlIFNUTTMyIHBvcnRmb2xpbwotICAgKiBUaGUgQlNQIERyaXZlcnMgb2YgZWFjaCBldmFsdWF0aW9uIG9yIGRlbW9uc3RyYXRpb24gYm9hcmQgcHJvdmlkZWQgYnkgdGhpcyBTVE0zMiBzZXJpZXMKLSAgICogQSBjb25zaXN0ZW50IHNldCBvZiBtaWRkbGV3YXJlcyBjb21wb25lbnRzIHN1Y2ggYXMgUlRPUywgVVNCLCBGYXRGUywgR3JhcGhpY3MsIFNUTTMyX1RvdWNoU2Vuc2luZ19MaWJyYXJ5IC4uLgotICAgKiBBIGZ1bGwgc2V0IG9mIHNvZnR3YXJlIHByb2plY3RzIChiYXNpYyBleGFtcGxlcywgYXBwbGljYXRpb25zIG9yIGRlbW9uc3RyYXRpb25zKSBmb3IgZWFjaCBib2FyZCBwcm92aWRlZCBieSB0aGlzIFNUTTMyIHNlcmllcworKipTVE0zMkN1YmUqKiBjb3ZlcnMgdGhlIG92ZXJhbGwgU1RNMzIgcHJvZHVjdHMgcG9ydGZvbGlvLiBJdCBpbmNsdWRlcyBhIGNvbXByZWhlbnNpdmUgZW1iZWRkZWQgc29mdHdhcmUgcGxhdGZvcm0gZGVsaXZlcmVkIGZvciBlYWNoIFNUTTMyIHNlcmllcy4KKyAgICogVGhlIENNU0lTIG1vZHVsZXMgKGNvcmUgYW5kIGRldmljZSkgY29ycmVzcG9uZGluZyB0byB0aGUgQVJNKHRtKSBjb3JlIGltcGxlbWVudGVkIGluIHRoaXMgU1RNMzIgcHJvZHVjdC4KKyAgICogVGhlIFNUTTMyIEhBTC1MTCBkcml2ZXJzLCBhbiBhYnN0cmFjdGlvbiBsYXllciBvZmZlcmluZyBhIHNldCBvZiBBUElzIGVuc3VyaW5nIG1heGltaXplZCBwb3J0YWJpbGl0eSBhY3Jvc3MgdGhlIFNUTTMyIHBvcnRmb2xpby4KKyAgICogVGhlIEJTUCBkcml2ZXJzIG9mIGVhY2ggZXZhbHVhdGlvbiwgZGVtb25zdHJhdGlvbiBvciBudWNsZW8gYm9hcmQgcHJvdmlkZWQgZm9yIHRoaXMgU1RNMzIgc2VyaWVzLgorICAgKiBBIGNvbnNpc3RlbnQgc2V0IG9mIG1pZGRsZXdhcmUgbGlicmFyaWVzIHN1Y2ggYXMgUlRPUywgVVNCLCBGYXRGUywgZ3JhcGhpY3MsIHRvdWNoIHNlbnNpbmcgbGlicmFyeS4uLgorICAgKiBBIGZ1bGwgc2V0IG9mIHNvZnR3YXJlIHByb2plY3RzIChiYXNpYyBleGFtcGxlcywgYXBwbGljYXRpb25zLCBhbmQgZGVtb25zdHJhdGlvbnMpIGZvciBlYWNoIGJvYXJkIHByb3ZpZGVkIGZvciB0aGlzIFNUTTMyIHNlcmllcy4KIAotVHdvIG1vZGVscyBvZiBwdWJsaWNhdGlvbiBhcmUgcHJvcG9zZWQgZm9yIHRoZSBTVE0zMkN1YmUgZW1iZWRkZWQgc29mdHdhcmUgOgotICAgKiBUaGUgbW9ub2xpdGhpYyAqKk1DVSBQYWNrYWdlKiogOiBhbGwgU1RNMzJDdWJlIHNvZnR3YXJlIG1vZHVsZXMgb2Ygb25lIFNUTTMyIHNlcmllcyBhcmUgcHJlc2VudCAoRHJpdmVycywgTWlkZGxld2FyZXMsIFByb2plY3RzLCBVdGlsaXRpZXMpIGluIHRoZSByZXBvICh1c3VhbCBuYW1lICoqU1RNMzJDdWJleHgqKiwgeHggY29ycmVzcG9uZGluZyB0byB0aGUgU1RNMzIgc2VyaWVzKQotICAgKiBUaGUgKipNQ1UgY29tcG9uZW50KiogOiBwcm9ncmVzc2l2ZWx5IGZyb20gTm92ZW1iZXIgMjAxOSwgZWFjaCBTVE0zMkN1YmUgc29mdHdhcmUgbW9kdWxlIGJlaW5nIHBhcnQgb2YgdGhlIFNUTTMyQ3ViZSBNQ1UgUGFja2FnZSwgd2lsbCBiZSBkZWxpdmVyZWQgYXMgYW4gaW5kaXZpZHVhbCByZXBvLCBhbGxvd2luZyB0aGUgdXNlciB0byBzZWxlY3QgYW5kIGdldCBvbmx5IHRoZSByZXF1aXJlZCBzb2Z0d2FyZSBmdW5jdGlvbnMuCitUd28gbW9kZWxzIG9mIHB1YmxpY2F0aW9uIGFyZSBwcm9wb3NlZCBmb3IgdGhlIFNUTTMyQ3ViZSBlbWJlZGRlZCBzb2Z0d2FyZToKKyAgICogVGhlIG1vbm9saXRoaWMgKipNQ1UgUGFja2FnZSoqOiBhbGwgU1RNMzJDdWJlIHNvZnR3YXJlIG1vZHVsZXMgb2Ygb25lIFNUTTMyIHNlcmllcyBhcmUgcHJlc2VudCAoRHJpdmVycywgTWlkZGxld2FyZSwgUHJvamVjdHMsIFV0aWxpdGllcykgaW4gdGhlIHJlcG9zaXRvcnkgKHVzdWFsIG5hbWUgKipTVE0zMkN1YmV4eCoqLCB4eCBjb3JyZXNwb25kaW5nIHRvIHRoZSBTVE0zMiBzZXJpZXMpLgorICAgKiBUaGUgKipNQ1UgY29tcG9uZW50Kio6IGVhY2ggU1RNMzJDdWJlIHNvZnR3YXJlIG1vZHVsZSBiZWluZyBwYXJ0IG9mIHRoZSBTVE0zMkN1YmUgTUNVIFBhY2thZ2UsIGlzIGRlbGl2ZXJlZCBhcyBhbiBpbmRpdmlkdWFsIHJlcG9zaXRvcnksIGFsbG93aW5nIHRoZSB1c2VyIHRvIHNlbGVjdCBhbmQgZ2V0IG9ubHkgdGhlIHJlcXVpcmVkIHNvZnR3YXJlIGZ1bmN0aW9ucy4KIAogIyMgRGVzY3JpcHRpb24KIApAQCAtMzQsMTAgKzM0LDEwIEBACiBUYWcgdjEuMS4xIHwgVGFnIHY1LjQuMF9jbTQgfCBUYWcgdjEuMi4wCiBUYWcgdjEuMi4wIHwgVGFnIHY1LjYuMF9jbTQgfCBUYWcgdjEuMy4wCiBUYWcgdjEuMi4xIHwgVGFnIHY1LjYuMF9jbTQgfCBUYWcgdjEuNC4wCitUYWcgdjEuMi4yIHwgVGFnIHY1LjYuMF9jbTQgfCBUYWcgdjEuNS4wCiAKIFRoZSBmdWxsICoqU1RNMzJDdWJlRzQqKiBNQ1UgcGFja2FnZSBpcyBhdmFpbGFibGUgW2hlcmVdKGh0dHBzOi8vZ2l0aHViLmNvbS9TVE1pY3JvZWxlY3Ryb25pY3MvU1RNMzJDdWJlRzQpLgogCiAjIyBUcm91Ymxlc2hvb3RpbmcKLUlmIHlvdSBoYXZlIGFueSBpc3N1ZSB3aXRoIHRoZSAqKlNvZnR3YXJlIGNvbnRlbnQqKiBvZiB0aGlzIHJlcG8sIHlvdSBjYW4gW2ZpbGUgYW4gaXNzdWUgb24gR2l0aHViXShodHRwczovL2dpdGh1Yi5jb20vU1RNaWNyb2VsZWN0cm9uaWNzL2Ntc2lzX2RldmljZV9nNC9pc3N1ZXMvbmV3KS4KIAotRm9yIGFueSBvdGhlciBxdWVzdGlvbiByZWxhdGVkIHRvIHRoZSBwcm9kdWN0LCB0aGUgdG9vbHMsIHRoZSBlbnZpcm9ubWVudCwgeW91IGNhbiBzdWJtaXQgYSB0b3BpYyBvbiB0aGUgW1NUIENvbW11bml0eS9TVE0zMiBNQ1VzIGZvcnVtXShodHRwczovL2NvbW11bml0eS5zdC5jb20vcy9ncm91cC8wRjkwWDAwMDAwMEFYc0FTQVcvc3RtMzItbWN1cykuClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQorUGxlYXNlIHJlZmVyIHRvIHRoZSBbQ09OVFJJQlVUSU5HLm1kXShDT05UUklCVVRJTkcubWQpIGd1aWRlLgpkaWZmIC0tZ2l0IGEvUmVsZWFzZV9Ob3Rlcy5odG1sIGIvUmVsZWFzZV9Ob3Rlcy5odG1sCmluZGV4IDEwYzhiODEuLjdjZTVkMTEgMTAwNjQ0Ci0tLSBhL1JlbGVhc2VfTm90ZXMuaHRtbAorKysgYi9SZWxlYXNlX05vdGVzLmh0bWwKQEAgLTI5LDkgKzI5LDYgQEAKIDwvY2VudGVyPgogPC9kaXY+CiA8L2Rpdj4KLTxoMSBpZD0ibGljZW5zZSI+TGljZW5zZTwvaDE+Ci08cD5UaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBBcGFjaGUgMi4wIGxpY2Vuc2UsIHRoZSDigJxMaWNlbnNl4oCdOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBjb21wb25lbnQgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OjwvcD4KLTxwPjxhIGhyZWY9Imh0dHBzOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQXBhY2hlLTIuMCI+aHR0cHM6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9BcGFjaGUtMi4wPC9hPjwvcD4KIDxoMSBpZD0icHVycG9zZSI+UHVycG9zZTwvaDE+CiA8cD5UaGlzIGRyaXZlciBwcm92aWRlcyB0aGUgQ01TSVMgZGV2aWNlIGZvciB0aGUgc3RtMzJnNHh4IHByb2R1Y3RzLiBUaGlzIGNvdmVycyBmb2xsb3dpbmcgc2VyaWVzIDo8L3A+CiA8dWw+CkBAIC01MSwxMiArNDgsMTIgQEAKIDxkaXYgY2xhc3M9ImNvbC1zbS0xMiBjb2wtbGctOCI+CiA8aDEgaWQ9InVwZGF0ZS1oaXN0b3J5Ij5VcGRhdGUgSGlzdG9yeTwvaDE+CiA8ZGl2IGNsYXNzPSJjb2xsYXBzZSI+Ci08aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJjb2xsYXBzZS1zZWN0aW9uMV8yXzEiIGFyaWEtaGlkZGVuPSJ0cnVlIj4gPGxhYmVsIGZvcj0iY29sbGFwc2Utc2VjdGlvbjFfMl8xIiBhcmlhLWhpZGRlbj0idHJ1ZSI+VjEuMi4xIC8gMTEtSmFudWFyeS0yMDIxPC9sYWJlbD4KKzxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImNvbGxhcHNlLXNlY3Rpb24xXzJfMiIgY2hlY2tlZCBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24xXzJfMiIgYXJpYS1oaWRkZW49InRydWUiPlYxLjIuMiAvIDEwLU5vdmVtYmVyLTIwMjE8L2xhYmVsPgogPGRpdj4KIDxoMiBpZD0ibWFpbi1jaGFuZ2VzIj5NYWluIENoYW5nZXM8L2gyPgogPGgzIGlkPSJtYWludGVuYW5jZS1yZWxlYXNlIj5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KIDx1bD4KLTxsaT5HZW5lcmFsIHVwZGF0ZXMgdG8gZml4IGtub3duIGRlZmVjdHMgYW5kIGVuaGFuY2VtZW50cyBpbXBsZW1lbnRhdGlvbjwvbGk+Cis8bGk+R2VuZXJhbCB1cGRhdGVzIHRvIGZpeCBrbm93biBkZWZlY3RzIGFuZCBlbmhhbmNlbWVudHMgaW1wbGVtZW50YXRpb24uPC9saT4KIDwvdWw+CiA8aDIgaWQ9ImNvbnRlbnRzIj5Db250ZW50czwvaDI+CiA8dGFibGU+CkBAIC03MiwyMCArNjksODEgQEAKIDx0ZD4tIEdlbmVyYWwgdXBkYXRlcyB0byBmaXgga25vd24gZGVmZWN0cyBhbmQgZW5oYW5jZW1lbnRzIGltcGxlbWVudGF0aW9uLjwvdGQ+CiA8L3RyPgogPHRyIGNsYXNzPSJldmVuIj4KKzx0ZD4tIEFsbCBzb3VyY2UgZmlsZXM6IHVwZGF0ZSBkaXNjbGFpbWVyIHRvIGFkZCByZWZlcmVuY2UgdG8gdGhlIG5ldyBsaWNlbnNlIGFncmVlbWVudC48L3RkPgorPC90cj4KKzx0ciBjbGFzcz0ib2RkIj4KKzx0ZD4tIEFkZCBMU0kgbWF4aW11bSBzdGFydHVwIHRpbWUgZGF0YXNoZWV0IHZhbHVlOiBMU0lfU1RBUlRVUF9USU1FLjwvdGQ+Cis8L3RyPgorPHRyIGNsYXNzPSJldmVuIj4KKzx0ZD4tIEFkZCByZXNldCBlbmFibGUgYml0cyBkZWZpbml0aW9ucyBmb3Igc2xhdmUgdGltZXJzIG90aGVyIHRoYW4gdGltZXIgQS48L3RkPgorPC90cj4KKzx0ciBjbGFzcz0ib2RkIj4KKzx0ZD4tIEZpeCBEb3h5Z2VuIGdyb3VwaW5nIGlzc3Vlcy48L3RkPgorPC90cj4KKzx0ciBjbGFzcz0iZXZlbiI+Cis8dGQ+LSBBZGQgbmV3IGF0b21pYyByZWdpc3RlciBhY2Nlc3MgbWFjcm9zIGluIHN0bTMyZzR4eC5oIGZpbGUuPC90ZD4KKzwvdHI+Cis8dHIgY2xhc3M9Im9kZCI+Cis8dGQ+LSBSZW1vdmUgZXh0cmEgVElNNSByZWZlcmVuY2VzIGluIHRoZSBzdG0zMmc0NzF4eC5oIENNU0lTIGZpbGUgYW5kIGFkZCBzdXBwb3J0IHRvIHRoZSBUSU0yMC48L3RkPgorPC90cj4KKzwvdGJvZHk+Cis8L3RhYmxlPgorPHA+OiBGaXhlZCBidWdzIGxpc3Q8YnIgLz4KKzwvcD4KKzxoMiBpZD0ia25vd24tbGltaXRhdGlvbnMiPktub3duIExpbWl0YXRpb25zPC9oMj4KKzxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzIj5EZXZlbG9wbWVudCBUb29sY2hhaW5zIGFuZCBDb21waWxlcnM8L2gyPgorPHVsPgorPGxpPklBUiBFbWJlZGRlZCBXb3JrYmVuY2ggZm9yIEFSTSAoRVdBUk0pIHRvb2xjaGFpbiBWOC41MC40ICsgU1QtTGluazwvbGk+Cis8bGk+UmVhbFZpZXcgTWljcm9jb250cm9sbGVyIERldmVsb3BtZW50IEtpdCAoTURLLUFSTSkgdG9vbGNoYWluIFY1LjMxICsgU1QtTGluazwvbGk+Cis8bGk+Q3ViZUlERSB0b29sY2hhaW4gVjEuNi4wPC9saT4KKzwvdWw+Cis8aDIgaWQ9InN1cHBvcnRlZC1kZXZpY2VzLWFuZC1ib2FyZHMiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgorPHVsPgorPGxpPlNUTTMyRzQzMXh4LCBTVE0zMkc0NDF4eCBkZXZpY2VzPC9saT4KKzxsaT5TVE0zMkc0NzF4eCBkZXZpY2VzPC9saT4KKzxsaT5TVE0zMkc0NzN4eCwgU1RNMzJHNDgzeHggZGV2aWNlczwvbGk+Cis8bGk+U1RNMzJHNDc0eHgsIFNUTTMyRzQ4NHh4IGRldmljZXM8L2xpPgorPGxpPlNUTTMyRzQ5MXh4LCBTVE0zMkc0QTF4eCBkZXZpY2VzPC9saT4KKzwvdWw+Cis8cD5Ob3RlOiBpbiB0aGUgc2VjdGlvbiBhYm92ZSwgbWFpbiBjaGFuZ2VzIGFyZSBoaWdobGlnaHRlZCBpbiA8c3Ryb25nPmJvbGQ8L3N0cm9uZz4gc2luY2UgcHJldmlvdXMgcmVsZWFzZS48L3A+Cis8L2Rpdj4KKzwvZGl2PgorPGRpdiBjbGFzcz0iY29sbGFwc2UiPgorPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iY29sbGFwc2Utc2VjdGlvbjFfMl8xIiBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24xXzJfMSIgYXJpYS1oaWRkZW49InRydWUiPlYxLjIuMSAvIDExLUphbnVhcnktMjAyMTwvbGFiZWw+Cis8ZGl2PgorPGgyIGlkPSJtYWluLWNoYW5nZXMtMSI+TWFpbiBDaGFuZ2VzPC9oMj4KKzxoMyBpZD0ibWFpbnRlbmFuY2UtcmVsZWFzZS0xIj5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KKzx1bD4KKzxsaT5HZW5lcmFsIHVwZGF0ZXMgdG8gZml4IGtub3duIGRlZmVjdHMgYW5kIGVuaGFuY2VtZW50cyBpbXBsZW1lbnRhdGlvbjwvbGk+Cis8L3VsPgorPGgyIGlkPSJjb250ZW50cy0xIj5Db250ZW50czwvaDI+Cis8dGFibGU+Cis8Y2FwdGlvbj5BZGRpdGlvbmFsIGZlYXR1cmVzPGJyIC8+Cis8L2NhcHRpb24+Cis8dGhlYWQ+Cis8dHIgY2xhc3M9ImhlYWRlciI+Cis8dGg+SGVhZGxpbmU8L3RoPgorPC90cj4KKzwvdGhlYWQ+Cis8dGJvZHk+Cis8dHIgY2xhc3M9Im9kZCI+Cis8dGQ+LSBHZW5lcmFsIHVwZGF0ZXMgdG8gZml4IGtub3duIGRlZmVjdHMgYW5kIGVuaGFuY2VtZW50cyBpbXBsZW1lbnRhdGlvbi48L3RkPgorPC90cj4KKzx0ciBjbGFzcz0iZXZlbiI+CiA8dGQ+LSBQcm90ZWN0IFZlY3RvciB0YWJsZSBtb2RpZmljYXRpb24gZm9sbG93aW5nIFNSQU0gb3IgRkxBU0ggcHJlcHJvY2Vzc29yIGRpcmVjdGl2ZSBieSBhIGdlbmVyaWMgcHJlcHJvY2Vzc29yIGRpcmVjdGl2ZTogVVNFUl9WRUNUX1RBQl9BRERSRVNTLjwvdGQ+CiA8L3RyPgogPC90Ym9keT4KIDwvdGFibGU+CiA8cD46IEZpeGVkIGJ1Z3MgbGlzdDxiciAvPgogPC9wPgotPGgyIGlkPSJrbm93bi1saW1pdGF0aW9ucyI+S25vd24gTGltaXRhdGlvbnM8L2gyPgotPGgyIGlkPSJkZXZlbG9wbWVudC10b29sY2hhaW5zLWFuZC1jb21waWxlcnMiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+Cis8aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTEiPktub3duIExpbWl0YXRpb25zPC9oMj4KKzxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTEiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+CiA8dWw+CiA8bGk+SUFSIEVtYmVkZGVkIFdvcmtiZW5jaCBmb3IgQVJNIChFV0FSTSkgdG9vbGNoYWluIDxzdHJvbmc+VjguNTAuNDwvc3Ryb25nPiArIFNULUxpbms8L2xpPgogPGxpPlJlYWxWaWV3IE1pY3JvY29udHJvbGxlciBEZXZlbG9wbWVudCBLaXQgKE1ESy1BUk0pIHRvb2xjaGFpbiA8c3Ryb25nPlY1LjMxPC9zdHJvbmc+ICsgU1QtTGluazwvbGk+CiA8bGk+Q3ViZUlERSB0b29sY2hhaW4gPHN0cm9uZz5WMS42LjA8L3N0cm9uZz48L2xpPgogPC91bD4KLTxoMiBpZD0ic3VwcG9ydGVkLWRldmljZXMtYW5kLWJvYXJkcyI+U3VwcG9ydGVkIERldmljZXMgYW5kIGJvYXJkczwvaDI+Cis8aDIgaWQ9InN1cHBvcnRlZC1kZXZpY2VzLWFuZC1ib2FyZHMtMSI+U3VwcG9ydGVkIERldmljZXMgYW5kIGJvYXJkczwvaDI+CiA8dWw+CiA8bGk+U1RNMzJHNDMxeHgsIFNUTTMyRzQ0MXh4IGRldmljZXM8L2xpPgogPGxpPlNUTTMyRzQ3MXh4IGRldmljZXM8L2xpPgpAQCAtOTksMTMgKzE1NywxMyBAQAogPGRpdiBjbGFzcz0iY29sbGFwc2UiPgogPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iY29sbGFwc2Utc2VjdGlvbjFfMl8wIiBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24xXzJfMCIgYXJpYS1oaWRkZW49InRydWUiPlYxLjIuMCAvIDI2LUp1bmUtMjAyMDwvbGFiZWw+CiA8ZGl2PgotPGgyIGlkPSJtYWluLWNoYW5nZXMtMSI+TWFpbiBDaGFuZ2VzPC9oMj4KLTxoMyBpZD0ibWFpbnRlbmFuY2UtcmVsZWFzZS0xIj5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KKzxoMiBpZD0ibWFpbi1jaGFuZ2VzLTIiPk1haW4gQ2hhbmdlczwvaDI+Cis8aDMgaWQ9Im1haW50ZW5hbmNlLXJlbGVhc2UtMiI+TWFpbnRlbmFuY2UgcmVsZWFzZTwvaDM+CiA8dWw+CiA8bGk+QWRkIHN1cHBvcnQgZm9yIFNUTTMyRzQ5MXh4IGFuZCBTVE0zMkc0QTEgZGV2aWNlczwvbGk+CiA8bGk+R2VuZXJhbCB1cGRhdGVzIHRvIGZpeCBrbm93biBkZWZlY3RzIGFuZCBlbmhhbmNlbWVudHMgaW1wbGVtZW50YXRpb248L2xpPgogPC91bD4KLTxoMiBpZD0iY29udGVudHMtMSI+Q29udGVudHM8L2gyPgorPGgyIGlkPSJjb250ZW50cy0yIj5Db250ZW50czwvaDI+CiA8dGFibGU+CiA8Y2FwdGlvbj5BZGRpdGlvbmFsIGZlYXR1cmVzPGJyIC8+CiA8L2NhcHRpb24+CkBAIC0xMzEsMTQgKzE4OSwxNCBAQAogPC90YWJsZT4KIDxwPjogRml4ZWQgYnVncyBsaXN0PGJyIC8+CiA8L3A+Ci08aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTEiPktub3duIExpbWl0YXRpb25zPC9oMj4KLTxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTEiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+Cis8aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTIiPktub3duIExpbWl0YXRpb25zPC9oMj4KKzxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTIiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+CiA8dWw+CiA8bGk+SUFSIEVtYmVkZGVkIFdvcmtiZW5jaCBmb3IgQVJNIChFV0FSTSkgdG9vbGNoYWluIDxzdHJvbmc+VjguNDAuMTwvc3Ryb25nPjwvbGk+CiA8bGk+UmVhbFZpZXcgTWljcm9jb250cm9sbGVyIERldmVsb3BtZW50IEtpdCAoTURLLUFSTSkgdG9vbGNoYWluIFY1LjI3LjE8L2xpPgogPGxpPlNUTTMyQ3ViZUlERSB0b29sY2hhaW4gVjEuMy4wPC9saT4KIDwvdWw+Ci08aDIgaWQ9InN1cHBvcnRlZC1kZXZpY2VzLWFuZC1ib2FyZHMtMSI+U3VwcG9ydGVkIERldmljZXMgYW5kIGJvYXJkczwvaDI+Cis8aDIgaWQ9InN1cHBvcnRlZC1kZXZpY2VzLWFuZC1ib2FyZHMtMiI+U3VwcG9ydGVkIERldmljZXMgYW5kIGJvYXJkczwvaDI+CiA8dWw+CiA8bGk+U1RNMzJHNDMxeHgsIFNUTTMyRzQ0MXh4IGRldmljZXM8L2xpPgogPGxpPlNUTTMyRzQ3MXh4IGRldmljZXM8L2xpPgpAQCAtMTUyLDEwICsyMTAsMTAgQEAKIDxkaXYgY2xhc3M9ImNvbGxhcHNlIj4KIDxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9ImNvbGxhcHNlLXNlY3Rpb24xXzFfMSIgYXJpYS1oaWRkZW49InRydWUiPiA8bGFiZWwgZm9yPSJjb2xsYXBzZS1zZWN0aW9uMV8xXzEiIGFyaWEtaGlkZGVuPSJ0cnVlIj5WMS4xLjEgLyAxNC1GZWJydWFyeS0yMDIwPC9sYWJlbD4KIDxkaXY+Ci08aDIgaWQ9Im1haW4tY2hhbmdlcy0yIj5NYWluIENoYW5nZXM8L2gyPgotPGgzIGlkPSJtYWludGVuYW5jZS1yZWxlYXNlLTIiPk1haW50ZW5hbmNlIHJlbGVhc2U8L2gzPgorPGgyIGlkPSJtYWluLWNoYW5nZXMtMyI+TWFpbiBDaGFuZ2VzPC9oMj4KKzxoMyBpZD0ibWFpbnRlbmFuY2UtcmVsZWFzZS0zIj5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KIDxwPkdlbmVyYWwgdXBkYXRlcyB0byBmaXgga25vd24gZGVmZWN0cyBhbmQgZW5oYW5jZW1lbnRzIGltcGxlbWVudGF0aW9uPC9wPgotPGgyIGlkPSJjb250ZW50cy0yIj5Db250ZW50czwvaDI+Cis8aDIgaWQ9ImNvbnRlbnRzLTMiPkNvbnRlbnRzPC9oMj4KIDx0YWJsZT4KIDxjYXB0aW9uPkFkZGl0aW9uYWwgZmVhdHVyZXM8YnIgLz4KIDwvY2FwdGlvbj4KQEAgLTE4NywxNCArMjQ1LDE0IEBACiA8L3RyPgogPC90Ym9keT4KIDwvdGFibGU+Ci08aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTIiPktub3duIExpbWl0YXRpb25zPC9oMj4KLTxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTIiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+Cis8aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTMiPktub3duIExpbWl0YXRpb25zPC9oMj4KKzxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTMiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+CiA8dWw+CiA8bGk+SUFSIEVtYmVkZGVkIFdvcmtiZW5jaCBmb3IgQVJNIChFV0FSTSkgdG9vbGNoYWluIFY4LjMyLjM8L2xpPgogPGxpPlJlYWxWaWV3IE1pY3JvY29udHJvbGxlciBEZXZlbG9wbWVudCBLaXQgKE1ESy1BUk0pIHRvb2xjaGFpbiBWNS4yNy4xPC9saT4KIDxsaT5TVE0zMkN1YmVJREUgdG9vbGNoYWluIFYxLjMuMDwvbGk+CiA8L3VsPgotPGgyIGlkPSJzdXBwb3J0ZWQtZGV2aWNlcy1hbmQtYm9hcmRzLTIiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgorPGgyIGlkPSJzdXBwb3J0ZWQtZGV2aWNlcy1hbmQtYm9hcmRzLTMiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgogPHVsPgogPGxpPlNUTTMyRzQzMXh4LCBTVE0zMkc0NDF4eCBkZXZpY2VzPC9saT4KIDxsaT5TVE0zMkc0NzF4eCBkZXZpY2VzPC9saT4KQEAgLTIwNywxMCArMjY1LDEwIEBACiA8ZGl2IGNsYXNzPSJjb2xsYXBzZSI+CiA8aW5wdXQgdHlwZT0iY2hlY2tib3giIGlkPSJjb2xsYXBzZS1zZWN0aW9uMV8xXzAiIGFyaWEtaGlkZGVuPSJ0cnVlIj4gPGxhYmVsIGZvcj0iY29sbGFwc2Utc2VjdGlvbjFfMV8wIiBhcmlhLWhpZGRlbj0idHJ1ZSI+VjEuMS4wIC8gMjgtSnVuZS0yMDE5PC9sYWJlbD4KIDxkaXY+Ci08aDIgaWQ9Im1haW4tY2hhbmdlcy0zIj5NYWluIENoYW5nZXM8L2gyPgotPGgzIGlkPSJtYWludGVuYW5jZS1yZWxlYXNlLTMiPk1haW50ZW5hbmNlIHJlbGVhc2U8L2gzPgorPGgyIGlkPSJtYWluLWNoYW5nZXMtNCI+TWFpbiBDaGFuZ2VzPC9oMj4KKzxoMyBpZD0ibWFpbnRlbmFuY2UtcmVsZWFzZS00Ij5NYWludGVuYW5jZSByZWxlYXNlPC9oMz4KIDxwPk1haW50ZW5hbmNlIHJlbGVhc2Ugb2YgQ01TSVMgRGV2aWNlcyBkcml2ZXJzIHN1cHBvcnRpbmcgU1RNMzJHNDMxeHgsIFNUTTMyRzQ0MXh4LCBTVE0zMkc0NzF4eCwgU1RNMzJHNDczeHgsIDxzdHJvbmc+U1RNMzJHNDgzeHg8L3N0cm9uZz4sIFNUTTMyRzQ3NHh4IGFuZCBTVE0zMkc0ODR4eCBkZXZpY2VzPC9wPgotPGgyIGlkPSJjb250ZW50cy0zIj5Db250ZW50czwvaDI+Cis8aDIgaWQ9ImNvbnRlbnRzLTQiPkNvbnRlbnRzPC9oMj4KIDx0YWJsZT4KIDxjYXB0aW9uPkFkZGl0aW9uYWwgZmVhdHVyZXM8YnIgLz4KIDwvY2FwdGlvbj4KQEAgLTI1MSwxNCArMzA5LDE0IEBACiA8L3RyPgogPC90Ym9keT4KIDwvdGFibGU+Ci08aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTMiPktub3duIExpbWl0YXRpb25zPC9oMj4KLTxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTMiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+Cis8aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTQiPktub3duIExpbWl0YXRpb25zPC9oMj4KKzxoMiBpZD0iZGV2ZWxvcG1lbnQtdG9vbGNoYWlucy1hbmQtY29tcGlsZXJzLTQiPkRldmVsb3BtZW50IFRvb2xjaGFpbnMgYW5kIENvbXBpbGVyczwvaDI+CiA8dWw+CiA8bGk+SUFSIEVtYmVkZGVkIFdvcmtiZW5jaCBmb3IgQVJNIChFV0FSTSkgdG9vbGNoYWluIFY4LjIwLjI8L2xpPgogPGxpPlJlYWxWaWV3IE1pY3JvY29udHJvbGxlciBEZXZlbG9wbWVudCBLaXQgKE1ESy1BUk0pIHRvb2xjaGFpbiBWNS4yNTwvbGk+CiA8bGk+U3lzdGVtIFdvcmtiZW5jaCBTVE0zMiAoU1c0U1RNMzIpIHRvb2xjaGFpbiBWMi43LjI8L2xpPgogPC91bD4KLTxoMiBpZD0ic3VwcG9ydGVkLWRldmljZXMtYW5kLWJvYXJkcy0zIj5TdXBwb3J0ZWQgRGV2aWNlcyBhbmQgYm9hcmRzPC9oMj4KKzxoMiBpZD0ic3VwcG9ydGVkLWRldmljZXMtYW5kLWJvYXJkcy00Ij5TdXBwb3J0ZWQgRGV2aWNlcyBhbmQgYm9hcmRzPC9oMj4KIDx1bD4KIDxsaT5TVE0zMkc0MzF4eCwgU1RNMzJHNDQxeHggZGV2aWNlczwvbGk+CiA8bGk+U1RNMzJHNDcxeHggZGV2aWNlczwvbGk+CkBAIC0yNzEsMTIgKzMyOSwxMiBAQAogPGRpdiBjbGFzcz0iY29sbGFwc2UiPgogPGlucHV0IHR5cGU9ImNoZWNrYm94IiBpZD0iY29sbGFwc2Utc2VjdGlvbjFfMF8wIiBhcmlhLWhpZGRlbj0idHJ1ZSI+IDxsYWJlbCBmb3I9ImNvbGxhcHNlLXNlY3Rpb24xXzBfMCIgYXJpYS1oaWRkZW49InRydWUiPlYxLjAuMCAvIDEyLUFwcmlsLTIwMTk8L2xhYmVsPgogPGRpdj4KLTxoMiBpZD0ibWFpbi1jaGFuZ2VzLTQiPk1haW4gQ2hhbmdlczwvaDI+Cis8aDIgaWQ9Im1haW4tY2hhbmdlcy01Ij5NYWluIENoYW5nZXM8L2gyPgogPGgzIGlkPSJmaXJzdC1yZWxlYXNlIj5GaXJzdCByZWxlYXNlPC9oMz4KIDxwPkZpcnN0IG9mZmljaWFsIHJlbGVhc2UgZm9yIFNUTTMyRzR4eCBkZXZpY2VzPC9wPgotPGgyIGlkPSJjb250ZW50cy00Ij5Db250ZW50czwvaDI+Cis8aDIgaWQ9ImNvbnRlbnRzLTUiPkNvbnRlbnRzPC9oMj4KIDxwPkNNU0lTIGRldmljZXMgZmlsZXMgZm9yIFNUTTMyRzQzMXh4LCBTVE0zMkc0NDF4eCwgU1RNMzJHNDcxeHgsIFNUTTMyRzQ3M3h4LCBTVE0zMkc0NzR4eCBhbmQgU1RNMzJHNDg0eHguPC9wPgotPGgyIGlkPSJrbm93bi1saW1pdGF0aW9ucy00Ij5Lbm93biBMaW1pdGF0aW9uczwvaDI+Cis8aDIgaWQ9Imtub3duLWxpbWl0YXRpb25zLTUiPktub3duIExpbWl0YXRpb25zPC9oMj4KIDx0YWJsZT4KIDx0aGVhZD4KIDx0ciBjbGFzcz0iaGVhZGVyIj4KQEAgLTI4OSwxMyArMzQ3LDEzIEBACiA8L3RyPgogPC90Ym9keT4KIDwvdGFibGU+Ci08aDIgaWQ9ImRldmVsb3BtZW50LXRvb2xjaGFpbnMtYW5kLWNvbXBpbGVycy00Ij5EZXZlbG9wbWVudCBUb29sY2hhaW5zIGFuZCBDb21waWxlcnM8L2gyPgorPGgyIGlkPSJkZXZlbG9wbWVudC10b29sY2hhaW5zLWFuZC1jb21waWxlcnMtNSI+RGV2ZWxvcG1lbnQgVG9vbGNoYWlucyBhbmQgQ29tcGlsZXJzPC9oMj4KIDx1bD4KIDxsaT5JQVIgRW1iZWRkZWQgV29ya2JlbmNoIGZvciBBUk0gKEVXQVJNKSB0b29sY2hhaW4gVjguMjAuMjwvbGk+CiA8bGk+UmVhbFZpZXcgTWljcm9jb250cm9sbGVyIERldmVsb3BtZW50IEtpdCAoTURLLUFSTSkgdG9vbGNoYWluIFY1LjI1PC9saT4KIDxsaT5TeXN0ZW0gV29ya2JlbmNoIFNUTTMyIChTVzRTVE0zMikgdG9vbGNoYWluIFYyLjcuMjwvbGk+CiA8L3VsPgotPGgyIGlkPSJzdXBwb3J0ZWQtZGV2aWNlcy1hbmQtYm9hcmRzLTQiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgorPGgyIGlkPSJzdXBwb3J0ZWQtZGV2aWNlcy1hbmQtYm9hcmRzLTUiPlN1cHBvcnRlZCBEZXZpY2VzIGFuZCBib2FyZHM8L2gyPgogPHVsPgogPGxpPlNUTTMyRzQzMXh4LCBTVE0zMkc0NDF4eCBkZXZpY2VzPC9saT4KIDxsaT5TVE0zMkc0NzF4eCBkZXZpY2VzPC9saT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDMxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDMxeHgucwppbmRleCAzZDUyZDJjLi4zYWM0ZjMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQzMXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0MzF4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00MjIsNCArNDIxLDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDQxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDQxeHgucwppbmRleCBlMGRjYWJkLi45YzJjNThmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ0MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0NDF4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00MjQsNCArNDIzLDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDcxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDcxeHgucwppbmRleCA5OWZhZjZjLi41ZjZiZGRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ3MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0NzF4eC5zCkBAIC0xNywxNCArMTcsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00NDEsNCArNDQwLDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDczeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDczeHgucwppbmRleCA2ZWQ5MTliLi5iYjAxMjQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ3M3h4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0NzN4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00NjgsNCArNDY3LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDc0eHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDc0eHgucwppbmRleCA3NjcxYmMyLi41MGE4MDM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ3NHh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0NzR4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00ODQsNCArNDgzLDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDgzeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDgzeHgucwppbmRleCA3YTEyM2M4Li5iYWJhYjE5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ4M3h4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0ODN4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00NzAsNCArNDY5LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDg0eHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDg0eHgucwppbmRleCBjMjdlYzE1Li5kMjBlYzQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ4NHh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0ODR4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00ODYsNCArNDg1LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDkxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNDkxeHgucwppbmRleCBmZGY2YjYzLi43YTI3Mzk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzQ5MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0OTF4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00NDgsNCArNDQ3LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNGExeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnNGExeHgucwppbmRleCAxZGY2NjAzLi5mNGU0NzgzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZzRhMXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmc0YTF4eC5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00NTAsNCArNDQ5LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnYmsxY2IucyBiL1NvdXJjZS9UZW1wbGF0ZXMvYXJtL3N0YXJ0dXBfc3RtMzJnYmsxY2IucwppbmRleCAyZjg3MzNjLi43YzZlMjkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2FybS9zdGFydHVwX3N0bTMyZ2JrMWNiLnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9hcm0vc3RhcnR1cF9zdG0zMmdiazFjYi5zCkBAIC0xNiwxNCArMTYsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogPDw8IFVzZSBDb25maWd1cmF0aW9uIFdpemFyZCBpbiBDb250ZXh0IE1lbnUgPj4+CiA7CkBAIC00MjAsNCArNDE5LDMgQEAKIAogICAgICAgICAgICAgICAgICBFTkQKIAotOyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKioKZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDMxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDMxeHgucwppbmRleCBiZTVjYzNmLi4zMzk3NDI4IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQzMXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0MzF4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00OTYsNCArNDk1LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDQxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDQxeHgucwppbmRleCBkYzYyMWY5Li4xMWMzYWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ0MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0NDF4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00OTksNCArNDk4LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDcxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDcxeHgucwppbmRleCA5MThlYmVlLi5iOWFhNmRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ3MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0NzF4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01MjMsNCArNTIyLDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDczeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDczeHgucwppbmRleCBmNTlmM2ZjLi4zZDdkOGQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ3M3h4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0NzN4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01NjUsNCArNTY0LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDc0eHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDc0eHgucwppbmRleCAyYjM5NjI1Li5hNmFkZDMxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ3NHh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0NzR4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01ODksNCArNTg4LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDgzeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDgzeHgucwppbmRleCA3OTdmM2M4Li44NjkwZDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ4M3h4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0ODN4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01NjgsNCArNTY3LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDg0eHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDg0eHgucwppbmRleCBiZTA2NDA0Li45ZWMwZjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ4NHh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0ODR4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01OTEsNCArNTkwLDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDkxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNDkxeHgucwppbmRleCA5YWZmNDZjLi45ZTNiZjAyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzQ5MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0OTF4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01MzUsNCArNTM0LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNGExeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnNGExeHgucwppbmRleCBhYTQxMzg5Li4xNjNiZjBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZzRhMXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmc0YTF4eC5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC01MzgsNCArNTM3LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnYmsxY2IucyBiL1NvdXJjZS9UZW1wbGF0ZXMvZ2NjL3N0YXJ0dXBfc3RtMzJnYmsxY2IucwppbmRleCBmMzAyZjQyLi43NzhjYjQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2djYy9zdGFydHVwX3N0bTMyZ2JrMWNiLnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9nY2Mvc3RhcnR1cF9zdG0zMmdiazFjYi5zCkBAIC0xNSwxMyArMTUsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC00ODksNCArNDg4LDMgQEAKIAkud2VhawlGTUFDX0lSUUhhbmRsZXIKIAkudGh1bWJfc2V0IEZNQUNfSVJRSGFuZGxlcixEZWZhdWx0X0hhbmRsZXIKIAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDMxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDMxeHgucwppbmRleCA0ZmYzM2UxLi5iOGQxZjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQzMXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0MzF4eC5zCkBAIC0xNSwxNCArMTUsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOwogOyBUaGUgbW9kdWxlcyBpbiB0aGlzIGZpbGUgYXJlIGluY2x1ZGVkIGluIHRoZSBsaWJyYXJpZXMsIGFuZCBtYXkgYmUgcmVwbGFjZWQKQEAgLTU4NCw0ICs1ODMsMyBAQAogICAgICAgICBCIEZNQUNfSVJRSGFuZGxlcgogCiAgICAgICAgIEVORAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDQxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDQxeHgucwppbmRleCAzYWI3OTVjLi4wMDczNzFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ0MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0NDF4eC5zCkBAIC0xNSwxNCArMTUsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOwogOwpAQCAtNTkwLDQgKzU4OSwzIEBACiAgICAgICAgIEIgRk1BQ19JUlFIYW5kbGVyCiAKICAgICAgICAgRU5ECi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0NzF4eC5zIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0NzF4eC5zCmluZGV4IDgzODJmODcuLjAyOTU4ZjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDcxeHgucworKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ3MXh4LnMKQEAgLTE1LDE0ICsxNSwxMyBAQAogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7KiBAYXR0ZW50aW9uCiA7KgotOyogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi07KiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+Cis7KiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorOyogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIDsqCi07KiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLTsqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLTsqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKLTsqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCi07KgorOyogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCis7KiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCis7KiBJZiBubyBMSUNFTlNFIGZpbGUgY29tZXMgd2l0aCB0aGlzIHNvZnR3YXJlLCBpdCBpcyBwcm92aWRlZCBBUy1JUy4KKzsKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7CiA7CkBAIC02MzAsNCArNjI5LDMgQEAKICAgICAgICAgQiBGTUFDX0lSUUhhbmRsZXIKIAogICAgICAgICBFTkQKLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ3M3h4LnMgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ3M3h4LnMKaW5kZXggNzM0MDk0Mi4uYTE0MDA5OCAxMDA2NDQKLS0tIGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0NzN4eC5zCisrKyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDczeHgucwpAQCAtMTUsMTQgKzE1LDEzIEBACiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsqIEBhdHRlbnRpb24KIDsqCi07KiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KLTsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKzsqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCis7KiBBbGwgcmlnaHRzIHJlc2VydmVkLgogOyoKLTsqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotOyogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQotOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKLTsqCis7KiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKzsqIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvZnR3YXJlIGNvbXBvbmVudC4KKzsqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgorOwogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsKIDsKQEAgLTcwMCw0ICs2OTksMyBAQAogICAgICAgICBCIEZNQUNfSVJRSGFuZGxlcgogCiAgICAgICAgIEVORAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDc0eHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDc0eHgucwppbmRleCAzYWQwODgyLi5iYzQxNzFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ3NHh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0NzR4eC5zCkBAIC0xNSwxNCArMTUsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOwogOwpAQCAtNzQwLDQgKzczOSwzIEBACiAgICAgICAgIEIgRk1BQ19JUlFIYW5kbGVyCiAKICAgICAgICAgRU5ECi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0ODN4eC5zIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0ODN4eC5zCmluZGV4IDA1YjFlNWIuLmI0N2MxNDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDgzeHgucworKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ4M3h4LnMKQEAgLTE1LDE0ICsxNSwxMyBAQAogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7KiBAYXR0ZW50aW9uCiA7KgotOyogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi07KiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+Cis7KiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorOyogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIDsqCi07KiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLTsqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLTsqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKLTsqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCi07KgorOyogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCis7KiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCis7KiBJZiBubyBMSUNFTlNFIGZpbGUgY29tZXMgd2l0aCB0aGlzIHNvZnR3YXJlLCBpdCBpcyBwcm92aWRlZCBBUy1JUy4KKzsKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7CiA7CkBAIC03MDUsNCArNzA0LDMgQEAKICAgICAgICAgQiBGTUFDX0lSUUhhbmRsZXIKIAogICAgICAgICBFTkQKLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ4NHh4LnMgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ4NHh4LnMKaW5kZXggNWZjMzgwYi4uMDRmZTQ5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0ODR4eC5zCisrKyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDg0eHgucwpAQCAtMTUsMTQgKzE1LDEzIEBACiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsqIEBhdHRlbnRpb24KIDsqCi07KiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KLTsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKzsqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCis7KiBBbGwgcmlnaHRzIHJlc2VydmVkLgogOyoKLTsqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotOyogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQotOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKLTsqCis7KiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKzsqIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvZnR3YXJlIGNvbXBvbmVudC4KKzsqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgorOwogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsKIDsKQEAgLTc0NSw0ICs3NDQsMyBAQAogICAgICAgICBCIEZNQUNfSVJRSGFuZGxlcgogCiAgICAgICAgIEVORAotLyoqKioqKioqKioqKioqKioqKioqKioqKiAoQykgQ09QWVJJR0hUIFNUTWljcm9lbGVjdHJvbmljcyAqKioqKkVORCBPRiBGSUxFKioqKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDkxeHgucyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNDkxeHgucwppbmRleCBlZWJiMTAwLi5hNWM3OTA0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzQ5MXh4LnMKKysrIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0OTF4eC5zCkBAIC0xNSwxNCArMTUsMTMgQEAKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOyogQGF0dGVudGlvbgogOyoKLTsqIDxoMj48Y2VudGVyPiZjb3B5OyBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgotOyogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorOyogQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KKzsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiA7KgotOyogVGhpcyBzb2Z0d2FyZSBjb21wb25lbnQgaXMgbGljZW5zZWQgYnkgU1QgdW5kZXIgQlNEIDMtQ2xhdXNlIGxpY2Vuc2UsCi07KiB0aGUgIkxpY2Vuc2UiOyBZb3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlCi07KiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci07KiAgICAgICAgICAgICAgICAgICAgICAgIG9wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL0JTRC0zLUNsYXVzZQotOyoKKzsqIFRoaXMgc29mdHdhcmUgaXMgbGljZW5zZWQgdW5kZXIgdGVybXMgdGhhdCBjYW4gYmUgZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZQorOyogaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc29mdHdhcmUgY29tcG9uZW50LgorOyogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCis7CiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgogOwogOwpAQCAtNjUwLDQgKzY0OSwzIEBACiAgICAgICAgIEIgRk1BQ19JUlFIYW5kbGVyCiAKICAgICAgICAgRU5ECi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0YTF4eC5zIGIvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmc0YTF4eC5zCmluZGV4IDQ3ZDdmMGMuLjkwOWQ5ZWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnNGExeHgucworKysgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZzRhMXh4LnMKQEAgLTE1LDE0ICsxNSwxMyBAQAogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7KiBAYXR0ZW50aW9uCiA7KgotOyogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi07KiBBbGwgcmlnaHRzIHJlc2VydmVkLjwvY2VudGVyPjwvaDI+Cis7KiBDb3B5cmlnaHQgKGMpIDIwMTkgU1RNaWNyb2VsZWN0cm9uaWNzLgorOyogQWxsIHJpZ2h0cyByZXNlcnZlZC4KIDsqCi07KiBUaGlzIHNvZnR3YXJlIGNvbXBvbmVudCBpcyBsaWNlbnNlZCBieSBTVCB1bmRlciBCU0QgMy1DbGF1c2UgbGljZW5zZSwKLTsqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLTsqIExpY2Vuc2UuIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdDoKLTsqICAgICAgICAgICAgICAgICAgICAgICAgb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvQlNELTMtQ2xhdXNlCi07KgorOyogVGhpcyBzb2Z0d2FyZSBpcyBsaWNlbnNlZCB1bmRlciB0ZXJtcyB0aGF0IGNhbiBiZSBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlCis7KiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCis7KiBJZiBubyBMSUNFTlNFIGZpbGUgY29tZXMgd2l0aCB0aGlzIHNvZnR3YXJlLCBpdCBpcyBwcm92aWRlZCBBUy1JUy4KKzsKIDsqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiA7CiA7CkBAIC02NTUsNCArNjU0LDMgQEAKICAgICAgICAgQiBGTUFDX0lSUUhhbmRsZXIKIAogICAgICAgICBFTkQKLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZ2JrMWNiLnMgYi9Tb3VyY2UvVGVtcGxhdGVzL2lhci9zdGFydHVwX3N0bTMyZ2JrMWNiLnMKaW5kZXggNjcxMmIyNy4uZjI3OTYxZSAxMDA2NDQKLS0tIGEvU291cmNlL1RlbXBsYXRlcy9pYXIvc3RhcnR1cF9zdG0zMmdiazFjYi5zCisrKyBiL1NvdXJjZS9UZW1wbGF0ZXMvaWFyL3N0YXJ0dXBfc3RtMzJnYmsxY2IucwpAQCAtMTUsMTQgKzE1LDEzIEBACiA7KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsqIEBhdHRlbnRpb24KIDsqCi07KiA8aDI+PGNlbnRlcj4mY29weTsgQ29weXJpZ2h0IChjKSAyMDE5IFNUTWljcm9lbGVjdHJvbmljcy4KLTsqIEFsbCByaWdodHMgcmVzZXJ2ZWQuPC9jZW50ZXI+PC9oMj4KKzsqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCis7KiBBbGwgcmlnaHRzIHJlc2VydmVkLgogOyoKLTsqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotOyogdGhlICJMaWNlbnNlIjsgWW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZQotOyogTGljZW5zZS4gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0OgotOyogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKLTsqCis7KiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKzsqIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvZnR3YXJlIGNvbXBvbmVudC4KKzsqIElmIG5vIExJQ0VOU0UgZmlsZSBjb21lcyB3aXRoIHRoaXMgc29mdHdhcmUsIGl0IGlzIHByb3ZpZGVkIEFTLUlTLgorOwogOyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKIDsKIDsgVGhlIG1vZHVsZXMgaW4gdGhpcyBmaWxlIGFyZSBpbmNsdWRlZCBpbiB0aGUgbGlicmFyaWVzLCBhbmQgbWF5IGJlIHJlcGxhY2VkCkBAIC01NzksNCArNTc4LDMgQEAKICAgICAgICAgQiBGTUFDX0lSUUhhbmRsZXIKIAogICAgICAgICBFTkQKLS8qKioqKioqKioqKioqKioqKioqKioqKiogKEMpIENPUFlSSUdIVCBTVE1pY3JvZWxlY3Ryb25pY3MgKioqKipFTkQgT0YgRklMRSoqKiovCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGVtcGxhdGVzL3N5c3RlbV9zdG0zMmc0eHguYyBiL1NvdXJjZS9UZW1wbGF0ZXMvc3lzdGVtX3N0bTMyZzR4eC5jCmluZGV4IDkyZmM2NjIuLjkyMmU1N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UZW1wbGF0ZXMvc3lzdGVtX3N0bTMyZzR4eC5jCisrKyBiL1NvdXJjZS9UZW1wbGF0ZXMvc3lzdGVtX3N0bTMyZzR4eC5jCkBAIC01MywxMyArNTMsMTIgQEAKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICogQGF0dGVudGlvbgogICAqCi0gICogPGgyPjxjZW50ZXI+JmNvcHk7IENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCi0gICogQWxsIHJpZ2h0cyByZXNlcnZlZC48L2NlbnRlcj48L2gyPgorICAqIENvcHlyaWdodCAoYykgMjAxOSBTVE1pY3JvZWxlY3Ryb25pY3MuCisgICogQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAgKgotICAqIFRoaXMgc29mdHdhcmUgY29tcG9uZW50IGlzIGxpY2Vuc2VkIGJ5IFNUIHVuZGVyIEJTRCAzLUNsYXVzZSBsaWNlbnNlLAotICAqIHRoZSAiTGljZW5zZSI7IFlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUKLSAgKiBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXQ6Ci0gICogICAgICAgICAgICAgICAgICAgICAgICBvcGVuc291cmNlLm9yZy9saWNlbnNlcy9CU0QtMy1DbGF1c2UKKyAgKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRlcm1zIHRoYXQgY2FuIGJlIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUKKyAgKiBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb2Z0d2FyZSBjb21wb25lbnQuCisgICogSWYgbm8gTElDRU5TRSBmaWxlIGNvbWVzIHdpdGggdGhpcyBzb2Z0d2FyZSwgaXQgaXMgcHJvdmlkZWQgQVMtSVMuCiAgICoKICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCiAgICovCkBAIC0yODMsNSArMjgyLDQgQEAKICAgKiBAfQogICAqLwogCi0vKioqKioqKioqKioqKioqKioqKioqKioqIChDKSBDT1BZUklHSFQgU1RNaWNyb2VsZWN0cm9uaWNzICoqKioqRU5EIE9GIEZJTEUqKioqLwogCmRpZmYgLS1naXQgYS9tZDJodG1sLnNoIGIvbWQyaHRtbC5zaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjk5NmU3YS4uMDAwMDAwMAotLS0gYS9tZDJodG1sLnNoCisrKyAvZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotIyEvYmluL2Jhc2gKLQotIyBIb3cgdG8gdXNlIFBhbmRvYwotIyBUbyBjb252ZXJ0IHlvdXIgZXhpc3RpbmcgSFRNTCByZWxlYXNlIG5vdGVzIGludG8gTWFya2Rvd24gKHVzZWZ1bCB0byBidWlsZCB5b3VyIGhpc3RvcnkpLCB0eXBlIHRoZSBmb2xsb3dpbmcgY29tbWFuZCBpbiB5b3VyIGJhc2ggd2luZG93OgotICAjIHBhbmRvYyAtLWZyb20gaHRtbCAtLXRvIG1hcmtkb3duIFJlbGVhc2VfTm90ZXMuaHRtbCA+IFJlbGVhc2VfTm90ZXMubWQKLSMgVG8gY29udmVydCBhIC5tZCBmaWxlIGludG8gYW4gSFRNTCBvbmUsIHR5cGUgdGhlIGZvbGxvd2luZyBjb21tYW5kIGluIHlvdXIgYmFzaCB3aW5kb3c6Ci0gICMgcGFuZG9jIC1zIC1yIG1hcmtkb3duIC10IGh0bWw1IC1jICJfaHRtcmVzYy9taW5pLXN0LmNzcyIgUmVsZWFzZV9Ob3Rlcy5tZCA+IFJlbGVhc2VfTm90ZXMuaHRtbAotCi1wYW5kb2MgLXMgLXIgbWFya2Rvd24gLXQgaHRtbDUgLWMgIl9odG1yZXNjL21pbmktc3QuY3NzIiBSZWxlYXNlX05vdGVzLm1kID4gUmVsZWFzZV9Ob3Rlcy5odG1sCi0KLXJlYWQgLW4xIC1yIC1wICJQcmVzcyBhbnkga2V5IHRvIGNvbnRpbnVlLi4uIiBrZXkK