From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 25155 invoked from network); 15 Aug 2022 12:39:46 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 15 Aug 2022 12:39:46 -0000 Content-Type: multipart/mixed; boundary="===============8684370624332786703==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_cegui/cegui07=3A_drop_unused_python-devel_in_makedepends=2E?= To: ml@inbox.vuxu.org From: TinfoilSubmarine Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 15 Aug 2022 14:39:46 +0200 List-Id: Message-ID: <20220815123946.jeoFAfV0Y2B24VebT-8QF6kFNCr0LVStRtCPl2D-fNw@z> GitHub notification mails are now in MIME to allow UTF8. --===============8684370624332786703== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgVGluZm9pbFN1Ym1hcmluZSBhZ2Fp bnN0IG1hc3RlciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1 Yi5jb20vVGluZm9pbFN1Ym1hcmluZS92b2lkLXBhY2thZ2VzIHVwZGF0ZS9jZWd1aQpodHRwczov L2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMzg2MTQKCmNlZ3VpL2Nl Z3VpMDc6IGRyb3AgdW51c2VkIHB5dGhvbi1kZXZlbCBpbiBtYWtlZGVwZW5kcy4KPCEtLSBVbmNv bW1lbnQgcmVsZXZhbnQgc2VjdGlvbnMgYW5kIGRlbGV0ZSBvcHRpb25zIHdoaWNoIGFyZSBub3Qg YXBwbGljYWJsZSAtLT4NCg0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkgdGVzdGVkIHRo ZSBjaGFuZ2VzIGluIHRoaXMgUFI6ICoqWUVTKiogKHJhbiBgVFNDYCB3aXRoIHVwZGF0ZWQgYGdl Y3VpYCkNCg0KPCEtLQ0KIyMjIyBOZXcgcGFja2FnZQ0KLSBUaGlzIG5ldyBwYWNrYWdlIGNvbmZv cm1zIHRvIHRoZSBbcXVhbGl0eSByZXF1aXJlbWVudHNdKGh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvTWFudWFsLm1kI3F1YWxpdHktcmVxdWly ZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0tPg0KDQo8IS0tIE5vdGU6IElmIHRoZSBidWlsZCBp cyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4gMiBob3VycywgcGxlYXNlIGFkZCBjaSBza2lwIHRh ZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5HLm1kI2NvbnRpbnVvdXMtaW50ZWdyYXRpb24N CmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRpdmUgYnVpbGQgYW5kLCBpZiBzdXBwb3J0ZWQsIGF0 IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCklnbm9yZSB0aGlzIHNlY3Rpb24gaWYgdGhpcyBQUiBp cyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwhLS0NCiMjIyMgTG9jYWwgYnVpbGQgdGVzdGluZw0K LSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3IgbXkgbmF0aXZlIGFyY2hpdGVjdHVyZSwgKEFS Q0gtTElCQykNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9yIHRoZXNlIGFyY2hpdGVjdHVy ZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1aWxkcyk6DQogIC0gYWFyY2g2NC1tdXNsDQog IC0gYXJtdjdsDQogIC0gYXJtdjZsLW11c2wNCi0tPg0KDQpBbm90aGVyIG9uZSBub3QgYWN0dWFs bHkgdXNpbmcgYHB5dGhvbi1kZXZlbGAuIENvbmZpZ3VyZSBvdXRwdXQgc2hvd3MgdGhhdCBpdCB3 YXNuJ3QgZXZlbiBidWlsZGluZyB0aGUgcHl0aG9uIGV4dGVuc2lvbiBtb2R1bGVzIGR1ZSB0byBz b21lIGlzc3VlIHdpdGggQm9vc3QtcHl0aG9uLiBUaGUgb25seSBwYWNrYWdlIGRlcGVuZGluZyBv biB0aGlzIGlzIGBUU0NgIGFuZCBpdCBkb2Vzbid0IHNlZW0gdG8gcmVxdWlyZSB0aGUgcHl0aG9u IGV4dGVuc2lvbnMuCgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1s aW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMzg2MTQucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8684370624332786703== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-update/cegui-38614.patch" RnJvbSA3YWM3MmQxNDczNDAwODI1NmVhOGM2NDkyNjI3YzgxNDlmNzkzNGU2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2VsIEJlY2ttZXllciA8am9lbEBiZWNrbWV5ZXIudXM+CkRh dGU6IE1vbiwgMTUgQXVnIDIwMjIgMDg6MjY6MTYgLTA0MDAKU3ViamVjdDogW1BBVENIIDEvM10g U01DOiByZW1vdmUgcGFja2FnZQoKZG9lc24ndCB3b3JrIHdpdGggbGF0ZXN0IHVwc3RyZWFtIHZl cnNpb24gb2YgZGVwZW5kZW5jaWVzLCBmb3JrIGBUU0NgIGlzCmluIHZvaWQtcGFja2FnZXMgYWxy ZWFkeSBhbmQgaGFzIG1vcmUgcmVjZW50IHVwZGF0ZXMKLS0tCiBzcmNwa2dzL1NNQy9maWxlcy9z bWMuZGVza3RvcCAgICAgICAgICAgICAgICAgfCAgIDkgLQogc3JjcGtncy9TTUMvZmlsZXMvc21j LnBuZyAgICAgICAgICAgICAgICAgICAgIHwgQmluIDI5NjEgLT4gMCBieXRlcwogLi4uL1NNQy9w YXRjaGVzL2ZpeC1ib29zdF9maWxlc3lzdGVtLnBhdGNoICAgIHwgMTEyIC0tLS0tCiBzcmNwa2dz L1NNQy9wYXRjaGVzL2ZpeC1jZWd1aTA3LnBhdGNoICAgICAgICAgfCA0MzcgLS0tLS0tLS0tLS0t LS0tLS0tCiBzcmNwa2dzL1NNQy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg MzcgLS0KIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSAgICAgICAgICAgICB8ICAg MSArCiA2IGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCA1OTUgZGVsZXRpb25zKC0pCiBk ZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9TTUMvZmlsZXMvc21jLmRlc2t0b3AKIGRlbGV0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL1NNQy9maWxlcy9zbWMucG5nCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9TTUMvcGF0Y2hlcy9maXgtYm9vc3RfZmlsZXN5c3RlbS5wYXRjaAogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvU01DL3BhdGNoZXMvZml4LWNlZ3VpMDcucGF0Y2gKIGRlbGV0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL1NNQy90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvU01D L2ZpbGVzL3NtYy5kZXNrdG9wIGIvc3JjcGtncy9TTUMvZmlsZXMvc21jLmRlc2t0b3AKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDliN2Q4NGEwYzJjMC4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvU01DL2ZpbGVzL3NtYy5kZXNrdG9wCisrKyAvZGV2L251bGwKQEAgLTEsOSArMCww IEBACi1bRGVza3RvcCBFbnRyeV0KLVR5cGU9QXBwbGljYXRpb24KLU5hbWU9U2VjcmV0IE1hcnlv IENocm9uaWNsZXMKLUV4ZWM9c21jCi1JY29uPXNtYwotVGVybWluYWw9ZmFsc2UKLUNhdGVnb3Jp ZXM9R2FtZTtBcmNhZGVHYW1lOwotU3RhcnR1cE5vdGlmeT1mYWxzZQotCmRpZmYgLS1naXQgYS9z cmNwa2dzL1NNQy9maWxlcy9zbWMucG5nIGIvc3JjcGtncy9TTUMvZmlsZXMvc21jLnBuZwpkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZjAyYWYxYmZjMGZiYWJjYTQwZDMzMWRjMDVjYzhj NGQ5ZjQ4MjFhOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMApHSVQg YmluYXJ5IHBhdGNoCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKbGl0ZXJhbCAyOTYxCnpjbVhCV2N8 MjY+OXwhTz1PT2t5b1FMOzMpNUZ4VE5TSTUzMnh3Mio3e1Y8a0gyQUx0KmJeWXUjbCg7QnNpViNM dQp6cV9PMTJqRDV8TEtAJjJTP0trODFlIVpVYUorSmRSZjFMOT8tKll9c2luV3o3Qyk7XjgwMDF+ bU8rWHQpNj14MH0KejdSRkl4e3FHaD1WZXYzRzI5SG1pdjhQV251QUQpZUlEfDgqJDttTTQ1N1l3 eWM0YnJXNF9tKzRXZHtmQW9XOFMxCnpTaTZGQWskPjxRbmVyZj5xUHJWcEpSbjc4cWMqQmZsdD11 YFlKMj5vRHM9NDJZaXlyOCViOFItZHBPNCVyNkFxWAp6N2c0SGlwQm5zPjtNUzs2XzgwRE9rK1ht Sj0rWU91eClSYy1Ab3E3I3RMe1UpNSVqTSt2OVdGWTUhfCNtI2ZAYy0Kej4jN0ZvJDc9ZW40R1hK flRvUW8qQUA8Mj0ybSNZR3Vgdk1aRExNP2d2N3gwXlJEPiVLaXImeFVkUXcrY3gzdzQ0CnpiZ2pA ckl7V0p+LSZHNEQyemFJPUkqeHR8aGshPUI2JTNtKj1Cb2J4bDUxQ281WHpCWE9rQmtmby0kVEs5 QUxWKQp6dVckeUtFeGtHVVY9NHAkIUk+R0tuT1ROVXNHTzNMbEtWOUFvNmdmVTQkOGA0eTBTRlN0 ezZzWChVcTZoJl9KVSMKekQzdldUIzZ5d1V7YSkrcURsbXVGYXRnSWlhTEo5YWApJXpoTGZTRHVg fXZUKURrezVKV2J9U2M0azx0N20xRkpSCnohZ1heYiVYJXVxZXxnSXNudFg7Y0dlazVJQGU5eT1s WDlEQ3stNWhGTTZ7Y09WNXc8b3NZMyk5UWJJIUZgdD8/Zwp6SEwtJWBYNTB2PzV9RCR3MU9XQX45 VE9tSD4pU0x8SHN9eVJVWkorOyltQz9vPzUpNGlue2h8S01yRyRlSl5kJCUKeno2cy1KKTdJOCok TWZ5SlYtPGhkZjxkRnZmYkhgcC09LSNmY3shKUItWSs7MFRjV3tKVDlqXmJHQUB3Zj0odmtECnpw VTJzZTVUMkBSaU53RHhiOTEyKCtSeUp4ZVkoMTItTmg3XyM+RThnSmpHTHJFfClKNGtZRzl0KD0k bXs0K05tZQp6e3xSRWtVLWNiJnRRaVZUUERAS0cqOEpSLSY9TkEmRzQlPF4kJExJRkUmVCFGbi0x ZXppQDFRbWM4c3UmbEgxeWgKempHJD59TUtvPCh4Y3BRX0w8b2ZJMVk+YXg0VUt5cmBCND0lKW1B MCY5KkBIUlR0WDxiTFJQcTxfY2tXN2lgWVFwCno7UjF3IV9ZOSllPyMwK3crI2BLR15wbSNwTzZS M2B4dyYhNWdpUDJGI0spcD9ESDc4JD5qZjNNRHI2eCZlLUwkPgp6R1NQJnV6Vi1RWWFTYHJ0S1Jt cU44OFJDMXh+K0ViZzJVVTB5OV5rWiUjRVlwKVVnLUQ9WUw4YFheQXxjZ2lNNn0KelFVUyYla0ZG cURHPnd2MWhELUoxaEF6eUhSXk9gMzZsLXl3Zi1SM2NHayZDYy1majZ+dDx4MTN4VUYycUwrdzI7 CnptMT0lS0RFZEglTSRhYnw3dnVaMGJJbnJWSmdodyljJVo4Sz55ezVrUlpVS1JPZjAxQT1DaWtO SEhneEQ7ezFCfAp6Jn4hem1mRT5GaUdFNElOJExje3I+OVlKZEpMLWFSRDNWeFVCQUs7b1R4UFI1 ZUZtNnxKRCV7cDtqVjl9MGBNWmwKemN7RFZEb2ZScVJgYD1HQlYxR25edm4remNTeTxycnE5RGpE Nkc+aE9DI1IpbGZFeFBmVjNgeVlNOHZ9YzcxdHRBCnooZGB5MS0tWj1MOC0tWHx7fmBxajt6UFJi d0VqekNYWFdQUjskbSUoJXFnOXFRYkswbU1ocEkyZGxueW1uajgxOAp6NFRmR0lnajI/JmwrcVE3 VGwmVzU7Xnh7O3ZCSGI1Ql89fFFKYTBVVEBePWBKJjliaHRtWHJpTThWJGEwd0YzeEcKejVaNW9z ZC1wQmBtJStLM09kITBGQ2wpeEBTcCVSLXE1WigxI184I2FVdTE8UjRkfWtpcyFQTlhoSG0jWTtQ KGshCnolZERDQ3s/M2owTU1EaHpqUnk1X1c3RWtnRmFURkJpSnxZKUAhbGlAZ1dlMlNiSTRxJHVB MERqSkxjUEwhcyRWewp6Sno5PUdfNUpLREZwQDIhc3wkRXlicC17fUhNTDwteSFGfmo/PHNefXo7 Sy1Acyo8X31icEc9QnZFSnlKI1FqKU0Kel97OTh0Y2d2aWU5Myg1KjM3WExWOzAqbStlalpkbkFi ZDZUSnR9UGJUX09VM3YjR1lsVnhpYEZtbVJpO3dEUygoCnoyTHRsX2pQQ3xnSEFkZzZiPi0mZ3Vk O1A8QS0/b1o2VTBQOTRXNjNwdHw1I09nNmghanJsUzRieX1XKSRNO3dodAp6YWJmNFVwaHY/bUUt aGA9K0N0c2spNzh8UyRXcyY1VzlxP3grfUwjTSY9NjYrSzMjPFIpcWdAIVFjfXxFY0xjN2wKemY5 ZHt0Mm9zLTdrPyY8V0lrfHZJUmshMSNuUlk9MUM+dlgqNzx+dWtlMjRJT1l3azNWMCR6ZUFnVURj MF5keU5pCnpYbyttPl55aipyVzdje1F3TVZXS1FGfnItTj1VeSVCMCExUjlGMl9ycXwtfjR4eyoq b28jOGc2b0FXX1oobkEoRgp6cG52ISgrIXFDaXBHXlpkSHYjZTdSRkhBYm9gXkN4X3BLYzlpKm5B ZUVoPikyeyteT3AtYHJlPkUtdU1mRDJhdVcKenkkMUBFSiN9PFN1SCYyKV5HUk4wUEsjMiNwdmom VFZ5WnhzUHcyVWwrRkJEaCYlfTUjTmJIRH57YEA4czw9fGp3Cno3X3w4VFBvYnpeWWttZFh0fUN6 QGVpLVJuPkJ5TmJ5IXpGRD0lOXdaYmxpZEcpNkMzX1pWckQ9e2ApamY0Oz52Swp6K3d9NFo/fWU+ I2k3KyVlOTdlNz9UdTkxMEl+MHRlKTl9Oz9FclFrUThrZzk7NGM5bWJfSGI9dnNnRTlWRjxWb0UK ekwqTWhsK1ZDeXRJK2FRbEtMMWQodCtUVmZiQTk9SkVYOGtOUlprMmRBYUwjNCNmIXhCYjVxVF54 c2NeJE81TkJQCnpYSz9COTttViprV31TK2tYeVUkYk5nbFNuR2MpYnNTLU9odj15KU0tWkVieTxL OTljfTdxIXBIblVQXj54aVdYbwp6UnBEJmZkbkFISlRsZ21fQkxoZGNiM0J6PkYtbD4rQjItViRz V35ETm55I3JDZyQ8KHtaaVYlSDxGdHt6T3tTYHkKemNVIWx1ZSR8TDUoMjNnaGQmPE1aM0w8LVBs YTlmbmFtUlBXWD9yWGQodGBQb3AwJSlAQEJhUj52SmczV3tld0BHCnplNWEzTHQ9e2Q3ZkdRfndC fkRDQ0x+WW9JS1I4cn0zVm8qanokUVQ2cGNtZEhuJjtQV0ozR2Y1WVcwO0QzK0tRNQp6eFhoY1Bj QGVxRER+K3RTNmB1eihMXipUdit1dUEkZitjYUtmQ34jbSUtb3M4dFNwcCZiKCo9Q3E/X3RDU1kk RW4Kel5EJDZTTzdzJERFQnpkd0N8OFlyUio4JDk1NmQtY0hnPE9RdntWK2QoXz92JXtwQDlYQn4w RCZLUD5lPnVwS1ZYCnpFKjl3Pj9oSj5BQj9+I1Y/UzRRWWk0PTlNQjNBMjUmVWFEKFZkM2NncWU9 M2ZnOTNBNWpIam1CVE0tYUVCUjY7PAp6clQ0SzE4aT5EZ3lfSSslZ0BzeG9IQCZgVyYyJHxZKnhL M3NkSDJXamJIKk1YOSpnZjE/Wm04LS18WHYtV0MqSlYKekFBQzxiX2ghVVRIOFBTblh1S2lyXz5u I0AjTkN+ZyZ1N1lyNF9tV1dLNyZQU2ZuKitVQTB9U2VUKGIlcmVeSzwjCnolMyFnMmkxYkdpbGR5 QmhecWJKNy1pKCN8e3w3UT1sTDRmWFluQHR4TVkwJD5paGVKVShILUJxaDduSUdlOURwQQp6PF41 b2Z5YHk4R3s3dHZ7eS1pSWAoNCFHVldedyNsUFdFSE9VLSljSGMyI3dDRThgYmUqMyl5Ukp1RUM0 X2RlfmAKekV6USRrIXBjcXtHeVN2c1lZdEJnIWI8ZEZmQTQ8JW9WVXJjJlBXdGRVRl8pZTY7LUN1 bXZeRj1HXyMmRE5neF94CnpxNT1acXBjPFM1I2d0Tk9ZVEFDYEwodD48X09mZjdDQV8+Y0BITDM1 dG5BWGk4T0YzZGtCVURyNUUmTkVSTGg2bgp6NztwNkslUGliQ1dOZFJsa1lpUilpWWJ2NTlyfUcr I1RaSWsmZCptd2dxan1jLUBoc2V7U3FjcWNAJF9SJmNse3MKemM3Zz9DIUpKak92VGBPI1dVeWVm NilLUVB7JD5vNSZQXmt4LXVjYkkwSCl0Qz1Qb142MHhMUXEwdSQkNi08d3hvCnpLWCFyKUloPDsx V3J9S2B4S29MUypDbU1DR3BKe2JsYExBWXt2ZF5mc1U3JEF4cEBiY0YpfXtqd09YOTkxK0w9RAp6 M0gwem5SI3FNPU81QktmSDxUcnorZjR+ekcrak5WbTt8SCNkWn51fElwdCU9TUFrUHtqXz5PSXgl NVp8ZDV3dzgKemZ4RHFganxkfmQpTGl4ZHM9X35ANWxAfno1VkI8dCQzYDxII1gtYXRHNj0pTXhD Y3lkYVZANkZnUi1tUjdFV25FCno9S3lSS2ZjfCpgYjwhPUp0cy1LQVJ8KX1oMUQ2YHo3aDh8VWtC PFNOSj98M0IxaE4lbDdZJiNpVDdoKjJadD8jRQpEJiUlNXgKCmRpZmYgLS1naXQgYS9zcmNwa2dz L1NNQy9wYXRjaGVzL2ZpeC1ib29zdF9maWxlc3lzdGVtLnBhdGNoIGIvc3JjcGtncy9TTUMvcGF0 Y2hlcy9maXgtYm9vc3RfZmlsZXN5c3RlbS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggOTI2ZmZiNmFmZTljLi4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9TTUMvcGF0Y2hl cy9maXgtYm9vc3RfZmlsZXN5c3RlbS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExMiArMCww IEBACi1Cb29zdCA+PSAxLjUgcmVuYW1lZCBwYXRoOjpsZWFmKCkgdG8gcGF0aDo6ZmlsZW5hbWUo KS4KLUZ1bmN0aW9uIHBhdGgoY29uc3Qgc3RyaW5nX3R5cGUmLCBuYW1lX2NoZWNrKSB3YXMgcmVt b3ZlZCwKLXRodXMgaGVyZSB3ZSB1c2UgcGF0aChjb25zdCBzdHJpbmdfdHlwZSYpLgotCi0tLS0g YS9zcmMvY29yZS9maWxlc3lzdGVtL2ZpbGVzeXN0ZW0uY3BwCTIwMTUtMTAtMzAgMTk6MTc6MDIu NTEyNjIwMjA0ICswMTAwCi0rKysgYi9zcmMvY29yZS9maWxlc3lzdGVtL2ZpbGVzeXN0ZW0uY3Bw CTIwMTUtMTAtMzAgMTk6MTc6NTcuMDM2NjIwMDQzICswMTAwCi1AQCAtNjQsNyArNjQsNyBAQAot IAotIGJvb2wgRGlyX0V4aXN0cyggY29uc3Qgc3RkOjpzdHJpbmcgJmRpciApCi0gewotLQlyZXR1 cm4gZnM6OmV4aXN0cyggZnM6OnBhdGgoIGRpciwgZnM6Om5hdGl2ZSApICk7Ci0rCXJldHVybiBm czo6ZXhpc3RzKCBmczo6cGF0aCggZGlyICkgKTsKLSAKLSAJLypzdHJ1Y3Qgc3RhdCBmaWxlX2lu Zm87Ci0gCi1AQCAtODksNyArODksNyBAQAotIAotIGJvb2wgQ3JlYXRlX0RpcmVjdG9yeSggY29u c3Qgc3RkOjpzdHJpbmcgJmRpciApCi0gewotLQlyZXR1cm4gZnM6OmNyZWF0ZV9kaXJlY3Rvcnko IGZzOjpwYXRoKCBkaXIsIGZzOjpuYXRpdmUgKSApOwotKwlyZXR1cm4gZnM6OmNyZWF0ZV9kaXJl Y3RvcnkoIGZzOjpwYXRoKCBkaXIgKSApOwotIH0KLSAKLSBzaXplX3QgR2V0X0ZpbGVfU2l6ZSgg Y29uc3Qgc3RkOjpzdHJpbmcgJmZpbGVuYW1lICkKLUBAIC0xMzAsNyArMTMwLDcgQEAKLSB7Ci0g CXZlY3RvcjxzdGQ6OnN0cmluZz4gdmFsaWRfZmlsZXM7Ci0gCi0tCWZzOjpwYXRoIGZ1bGxfcGF0 aCggZGlyLCBmczo6bmF0aXZlICk7Ci0rCWZzOjpwYXRoIGZ1bGxfcGF0aCggZGlyICk7Ci0gCWZz OjpkaXJlY3RvcnlfaXRlcmF0b3IgZW5kX2l0ZXI7Ci0gCi0gCS8vIGxvYWQgYWxsIGF2YWlsYWJs ZSBvYmplY3RzCi1AQCAtMTQyLDMyICsxNDIsMzIgQEAKLSAJCQlpZiggZnM6OmlzX2RpcmVjdG9y eSggKmRpcl9pdHIgKSApCi0gCQkJewotIAkJCQkvLyBpZ25vcmUgaGlkZGVuIGRpcmVjdG9yaWVz Ci0tCQkJCWlmKCBkaXJfaXRyLT5wYXRoKCkubGVhZigpLmZpbmQoICIuIiApID09IDAgKQotKwkJ CQlpZiggZGlyX2l0ci0+cGF0aCgpLmZpbGVuYW1lKCkuc3RyaW5nKCkuZmluZCggIi4iICkgPT0g MCApCi0gCQkJCXsKLSAJCQkJCWNvbnRpbnVlOwotIAkJCQl9Ci0gCi0gCQkJCWlmKCB3aXRoX2Rp cmVjdG9yaWVzICkKLSAJCQkJewotLQkJCQkJdmFsaWRfZmlsZXMucHVzaF9iYWNrKCBkaXIgKyAi LyIgKyBkaXJfaXRyLT5wYXRoKCkubGVhZigpICk7Ci0rCQkJCQl2YWxpZF9maWxlcy5wdXNoX2Jh Y2soIGRpciArICIvIiArIGRpcl9pdHItPnBhdGgoKS5maWxlbmFtZSgpLnN0cmluZygpICk7Ci0g CQkJCX0KLSAKLSAJCQkJLy8gbG9hZCBhbGwgaXRlbXMgZnJvbSB0aGUgc3ViLWRpcmVjdG9yeQot IAkJCQlpZiggc2VhcmNoX2luX3N1Yl9kaXJlY3RvcmllcyApCi0gCQkJCXsKLS0JCQkJCXZlY3Rv cjxzdGQ6OnN0cmluZz4gbmV3X3ZhbGlkX2ZpbGVzID0gR2V0X0RpcmVjdG9yeV9GaWxlcyggZGly ICsgIi8iICsgZGlyX2l0ci0+cGF0aCgpLmxlYWYoKSwgZmlsZV90eXBlLCB3aXRoX2RpcmVjdG9y aWVzICk7Ci0rCQkJCQl2ZWN0b3I8c3RkOjpzdHJpbmc+IG5ld192YWxpZF9maWxlcyA9IEdldF9E aXJlY3RvcnlfRmlsZXMoIGRpciArICIvIiArIGRpcl9pdHItPnBhdGgoKS5maWxlbmFtZSgpLnN0 cmluZygpLCBmaWxlX3R5cGUsIHdpdGhfZGlyZWN0b3JpZXMgKTsKLSAJCQkJCXZhbGlkX2ZpbGVz Lmluc2VydCggdmFsaWRfZmlsZXMuZW5kKCksIG5ld192YWxpZF9maWxlcy5iZWdpbigpLCBuZXdf dmFsaWRfZmlsZXMuZW5kKCkgKTsKLSAJCQkJfQotIAkJCX0KLSAJCQkvLyB2YWxpZCBmaWxlCi0t CQkJZWxzZSBpZiggZmlsZV90eXBlLmVtcHR5KCkgfHwgZGlyX2l0ci0+cGF0aCgpLmxlYWYoKS5y ZmluZCggZmlsZV90eXBlICkgIT0gc3RkOjpzdHJpbmc6Om5wb3MgKQotKwkJCWVsc2UgaWYoIGZp bGVfdHlwZS5lbXB0eSgpIHx8IGRpcl9pdHItPnBhdGgoKS5maWxlbmFtZSgpLnN0cmluZygpLnJm aW5kKCBmaWxlX3R5cGUgKSAhPSBzdGQ6OnN0cmluZzo6bnBvcyApCi0gCQkJewotLQkJCQl2YWxp ZF9maWxlcy5wdXNoX2JhY2soIGRpciArICIvIiArIGRpcl9pdHItPnBhdGgoKS5sZWFmKCkgKTsK LSsJCQkJdmFsaWRfZmlsZXMucHVzaF9iYWNrKCBkaXIgKyAiLyIgKyBkaXJfaXRyLT5wYXRoKCku ZmlsZW5hbWUoKS5zdHJpbmcoKSApOwotIAkJCX0KLSAJCX0KLSAJCWNhdGNoKCBjb25zdCBzdGQ6 OmV4Y2VwdGlvbiAmZXggKQotIAkJewotLQkJCXByaW50ZiggIiVzICVzXG4iLCBkaXJfaXRyLT5w YXRoKCkubGVhZigpLmNfc3RyKCksIGV4LndoYXQoKSApOwotKwkJCXByaW50ZiggIiVzICVzXG4i LCBkaXJfaXRyLT5wYXRoKCkuZmlsZW5hbWUoKS5jX3N0cigpLCBleC53aGF0KCkgKTsKLSAJCX0K LSAJfQotIAotLS0tIGEvc3JjL292ZXJ3b3JsZC93b3JsZF9tYW5hZ2VyLmNwcAkyMDE1LTEwLTMw IDE5OjE3OjAyLjY0OTYyMDIwNCArMDEwMAotKysrIGIvc3JjL292ZXJ3b3JsZC93b3JsZF9tYW5h Z2VyLmNwcAkyMDE1LTEwLTMwIDE4OjMwOjIzLjI5OTYyODQ5NyArMDEwMAotQEAgLTExMSw3ICsx MTEsNyBAQAotIHZvaWQgY092ZXJ3b3JsZF9NYW5hZ2VyIDo6IExvYWRfRGlyKCBjb25zdCBzdGQ6 OnN0cmluZyAmZGlyLCBib29sIHVzZXJfZGlyIC8qID0gMCAqLyApIAotIHsKLSAJLy8gc2V0IHdv cmxkIGRpcmVjdG9yeQotLQlmczo6cGF0aCBmdWxsX3BhdGgoIGRpciwgZnM6Om5hdGl2ZSApOwot Kwlmczo6cGF0aCBmdWxsX3BhdGgoIGRpciApOwotIAlmczo6ZGlyZWN0b3J5X2l0ZXJhdG9yIGVu ZF9pdGVyOwotIAotIAlmb3IoIGZzOjpkaXJlY3RvcnlfaXRlcmF0b3IgZGlyX2l0ciggZnVsbF9w YXRoICk7IGRpcl9pdHIgIT0gZW5kX2l0ZXI7ICsrZGlyX2l0ciApCi1AQCAtMTE4LDcgKzExOCw3 IEBACi0gCXsKLSAJCXRyeQotIAkJewotLQkJCXN0ZDo6c3RyaW5nIGN1cnJlbnRfZGlyID0gZGly X2l0ci0+cGF0aCgpLmxlYWYoKTsKLSsJCQlzdGQ6OnN0cmluZyBjdXJyZW50X2RpciA9IGRpcl9p dHItPnBhdGgoKS5maWxlbmFtZSgpLnN0cmluZygpOwotIAotIAkJCS8vIG9ubHkgZGlyZWN0b3Jp ZXMgd2l0aCBhbiBleGlzdGluZyBkZXNjcmlwdGlvbgotIAkJCWlmKCBmczo6aXNfZGlyZWN0b3J5 KCAqZGlyX2l0ciApICYmIEZpbGVfRXhpc3RzKCBkaXIgKyAiLyIgKyBjdXJyZW50X2RpciArICIv ZGVzY3JpcHRpb24ueG1sIiApICkKLS0tLSBhL3NyYy92aWRlby92aWRlby5jcHAJMjAxNS0xMC0z MCAxOToxNzowMi44MjI2MjAyMDMgKzAxMDAKLSsrKyBiL3NyYy92aWRlby92aWRlby5jcHAJMjAx NS0xMC0zMCAxOToxODo1Ny40OTM2MTk4NjQgKzAxMDAKLUBAIC03NDcsNyArNzQ3LDcgQEAKLSAJ CXsKLSAJCQl0cnkKLSAJCQl7Ci0tCQkJCWZzOjpyZW1vdmVfYWxsKCBmczo6cGF0aCggbV9pbWdj YWNoZV9kaXIsIGZzOjpuYXRpdmUgKSApOwotKwkJCQlmczo6cmVtb3ZlX2FsbCggZnM6OnBhdGgo IG1faW1nY2FjaGVfZGlyICkgKTsKLSAJCQl9Ci0gCQkJLy8gY291bGQgaGFwcGVuIGlmIGEgZmls ZSBpcyBsb2NrZWQgb3Igd2UgaGF2ZSBubyB3cml0ZSByaWdodHMKLSAJCQljYXRjaCggY29uc3Qg c3RkOjpleGNlcHRpb24gJmV4ICkKLUBAIC03NjksNyArNzY5LDcgQEAKLSAJLy8gbm8gY2FjaGUg YXZhaWxhYmxlCi0gCWlmKCAhRGlyX0V4aXN0cyggaW1nY2FjaGVfZGlyX2FjdGl2ZSApICkKLSAJ ewotLQkJZnM6OmNyZWF0ZV9kaXJlY3RvcmllcyggZnM6OnBhdGgoIGltZ2NhY2hlX2Rpcl9hY3Rp dmUgKyAiLyIgR0FNRV9QSVhNQVBTX0RJUiwgZnM6Om5hdGl2ZSApICk7Ci0rCQlmczo6Y3JlYXRl X2RpcmVjdG9yaWVzKCBmczo6cGF0aCggaW1nY2FjaGVfZGlyX2FjdGl2ZSArICIvIiBHQU1FX1BJ WE1BUFNfRElSICkgKTsKLSAJfQotIAkvLyBjYWNoZSBhdmFpbGFibGUKLSAJZWxzZQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9TTUMvcGF0Y2hlcy9maXgtY2VndWkwNy5wYXRjaCBiL3NyY3BrZ3MvU01D L3BhdGNoZXMvZml4LWNlZ3VpMDcucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDNmY2RiODM3MGE5OC4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvU01DL3BhdGNoZXMvZml4 LWNlZ3VpMDcucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw0MzcgKzAsMCBAQAotZGlmZiAtdXIg c21jLTEuOS9jb25maWd1cmUuYWMgc21jLTEuOS1iL2NvbmZpZ3VyZS5hYwotLS0tIGEvY29uZmln dXJlLmFjCTIwMDktMDgtMTcgMTU6NTk6MDAuMDAwMDAwMDAwICswMjAwCi0rKysgYi9jb25maWd1 cmUuYWMJMjAxMS0wMS0xOSAwMDo0MzozNy44MDk4ODQ4ODEgKzAxMDAKLUBAIC01Myw3ICs1Myw3 IEBACi0gCUFDX01TR19FUlJPUihbU0RMX3R0ZiBsaWJyYXJ5IG5vdCBmb3VuZF0pKQotIAotICMg Q2hlY2sgZm9yIHRoZSBDRUdVSSBsaWJyYXJ5Ci0tUEtHX0NIRUNLX01PRFVMRVMoQ0VHVUksIENF R1VJLU9QRU5HTCA+PSAwLjUuMCkKLStQS0dfQ0hFQ0tfTU9EVUxFUyhDRUdVSSwgQ0VHVUktT1BF TkdMID49IDAuNy4wKQotIENQUEZMQUdTPSIkQ1BQRkxBR1MgJENFR1VJX0NGTEFHUyIKLSBMSUJT PSIkTElCUyAkQ0VHVUlfTElCUyIKLSAKLWRpZmYgLXVyIHNtYy0xLjkvc3JjL2NvcmUvZWRpdG9y LmNwcCBzbWMtMS45LWIvc3JjL2NvcmUvZWRpdG9yLmNwcAotLS0tIGEvc3JjL2NvcmUvZWRpdG9y LmNwcAkyMDA5LTA4LTEzIDE3OjExOjQyLjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL2NvcmUv ZWRpdG9yLmNwcAkyMDExLTAxLTE5IDAwOjQ0OjQ2LjczNDMyODEyMSArMDEwMAotQEAgLTExOCwx NiArMTE4LDEwIEBACi0gCXJldHVybiB0bXA7Ci0gfQotIAotLXZvaWQgY0VkaXRvcl9JdGVtX09i amVjdCA6OiBkcmF3KCBjb25zdCBDRUdVSTo6VmVjdG9yMyAmcG9zaXRpb24sIGZsb2F0IGFscGhh LCBjb25zdCBDRUdVSTo6UmVjdCAmY2xpcHBlciApIGNvbnN0Ci0rdm9pZCBjRWRpdG9yX0l0ZW1f T2JqZWN0IDo6IGRyYXcoIENFR1VJOjpHZW9tZXRyeUJ1ZmZlciAmYnVmZmVyLCBjb25zdCBDRUdV STo6UmVjdCAmdGFyZ2V0UmVjdCwgZmxvYXQgYWxwaGEsIGNvbnN0IENFR1VJOjpSZWN0ICpjbGlw cGVyICkgY29uc3QKLSB7Ci0gCS8vIGRyYXcgdGV4dAotLQlsaXN0X3RleHQtPmRyYXcoIHBvc2l0 aW9uLCBhbHBoYSwgY2xpcHBlciApOwotLX0KLS0KLS12b2lkIGNFZGl0b3JfSXRlbV9PYmplY3Qg OjogZHJhdyggQ0VHVUk6OlJlbmRlckNhY2hlICZjYWNoZSwgY29uc3QgQ0VHVUk6OlJlY3QgJnRh cmdldFJlY3QsIGZsb2F0IHpCYXNlLCBmbG9hdCBhbHBoYSwgY29uc3QgQ0VHVUk6OlJlY3QgKmNs aXBwZXIgKSBjb25zdAotLXsKLS0JLy8gZHJhdyB0ZXh0Ci0tCWxpc3RfdGV4dC0+ZHJhdyggY2Fj aGUsIHRhcmdldFJlY3QsIHpCYXNlLCBhbHBoYSwgY2xpcHBlciApOwotKwlsaXN0X3RleHQtPmRy YXcoIGJ1ZmZlciwgdGFyZ2V0UmVjdCwgYWxwaGEsIGNsaXBwZXIgKTsKLSB9Ci0gCi0gdm9pZCBj RWRpdG9yX0l0ZW1fT2JqZWN0IDo6IERyYXdfSW1hZ2UoIHZvaWQgKQotQEAgLTUzMywxMiArNTI3 LDEyIEBACi0gCWlmKCBlZGl0b3Jfd2luZG93LT5nZXRYUG9zaXRpb24oKS5hc1JlbGF0aXZlKCAx ICkgPj0gMCApCi0gCXsKLSAJCS8vIExpc3Rib3ggZGltZW5zaW9uCi0tCQlmbG9hdCBsaXN0X3Bv c3kgPSBsaXN0Ym94X2l0ZW1zLT5nZXRVbmNsaXBwZWRQaXhlbFJlY3QoKS5kX3RvcCAqIGdsb2Jh bF9kb3duc2NhbGV5OwotLQkJZmxvYXQgbGlzdF9oZWlnaHQgPSBsaXN0Ym94X2l0ZW1zLT5nZXRV bmNsaXBwZWRQaXhlbFJlY3QoKS5nZXRIZWlnaHQoKSAqIGdsb2JhbF9kb3duc2NhbGV5OwotKwkJ ZmxvYXQgbGlzdF9wb3N5ID0gbGlzdGJveF9pdGVtcy0+Z2V0VW5jbGlwcGVkT3V0ZXJSZWN0KCku ZF90b3AgKiBnbG9iYWxfZG93bnNjYWxleTsKLSsJCWZsb2F0IGxpc3RfaGVpZ2h0ID0gbGlzdGJv eF9pdGVtcy0+Z2V0VW5jbGlwcGVkT3V0ZXJSZWN0KCkuZ2V0SGVpZ2h0KCkgKiBnbG9iYWxfZG93 bnNjYWxleTsKLSAJCS8vIFZlcnRpY2FsIFNjcm9sbEJhciBQb3NpdGlvbgotIAkJZmxvYXQgc2Ny b2xsX3BvcyA9IGxpc3Rib3hfaXRlbXMtPmdldFZlcnRTY3JvbGxiYXIoKS0+Z2V0U2Nyb2xsUG9z aXRpb24oKSAqIGdsb2JhbF9kb3duc2NhbGV5OwotIAkJLy8gZm9udCBoZWlnaHQKLS0JCWZsb2F0 IGZvbnRfaGVpZ2h0ID0gQ0VHVUk6OkZvbnRNYW5hZ2VyOjpnZXRTaW5nbGV0b24oKS5nZXRGb250 KCAiYmx1ZWJvbGRfbWVkaXVtIiApLT5nZXRGb250SGVpZ2h0KCkgKiBnbG9iYWxfZG93bnNjYWxl eTsKLSsJCWZsb2F0IGZvbnRfaGVpZ2h0ID0gQ0VHVUk6OkZvbnRNYW5hZ2VyOjpnZXRTaW5nbGV0 b24oKS5nZXQoICJibHVlYm9sZF9tZWRpdW0iICkuZ2V0Rm9udEhlaWdodCgpICogZ2xvYmFsX2Rv d25zY2FsZXk7Ci0gCi0gCQkvLyBkcmF3IGl0ZW1zCi0gCQlmb3IoIHVuc2lnbmVkIGludCBpID0g MDsgaSA8IGxpc3Rib3hfaXRlbXMtPmdldEl0ZW1Db3VudCgpOyBpKysgKQotZGlmZiAtdXIgc21j LTEuOS9zcmMvY29yZS9lZGl0b3IuaCBzbWMtMS45LWIvc3JjL2NvcmUvZWRpdG9yLmgKLS0tLSBh L3NyYy9jb3JlL2VkaXRvci5oCTIwMDktMDItMTggMDU6MjE6MzAuMDAwMDAwMDAwICswMTAwCi0r KysgYi9zcmMvY29yZS9lZGl0b3IuaAkyMDExLTAxLTE5IDAwOjQzOjM3LjgwOTg4NDg4MSArMDEw MAotQEAgLTYyLDggKzYyLDcgQEAKLSAJKi8KLSAJdmlydHVhbAlDRUdVSTo6U2l6ZSBnZXRQaXhl bFNpemUoIHZvaWQgKSBjb25zdDsKLSAJLy8gZHJhdwotLQl2b2lkIGRyYXcoIGNvbnN0IENFR1VJ OjpWZWN0b3IzICZwb3NpdGlvbiwgZmxvYXQgYWxwaGEsIGNvbnN0IENFR1VJOjpSZWN0ICZjbGlw cGVyICkgY29uc3Q7Ci0tCXZvaWQgZHJhdyggQ0VHVUk6OlJlbmRlckNhY2hlICZjYWNoZSwgY29u c3QgQ0VHVUk6OlJlY3QgJnRhcmdldFJlY3QsIGZsb2F0IHpCYXNlLCBmbG9hdCBhbHBoYSwgY29u c3QgQ0VHVUk6OlJlY3QgKmNsaXBwZXIpIGNvbnN0OwotKwl2b2lkIGRyYXcoQ0VHVUk6Okdlb21l dHJ5QnVmZmVyJiBidWZmZXIsIGNvbnN0IENFR1VJOjpSZWN0JiB0YXJnZXRSZWN0LCBmbG9hdCBh bHBoYSwgY29uc3QgQ0VHVUk6OlJlY3QqIGNsaXBwZXIpIGNvbnN0OwotIAkvLyBkcmF3IGltYWdl Ci0gCXZvaWQgRHJhd19JbWFnZSggdm9pZCApOwotIAotZGlmZiAtdXIgc21jLTEuOS9zcmMvY29y ZS9nYW1lX2NvcmUuY3BwIHNtYy0xLjktYi9zcmMvY29yZS9nYW1lX2NvcmUuY3BwCi0tLS0gYS9z cmMvY29yZS9nYW1lX2NvcmUuY3BwCTIwMDktMDgtMTYgMTg6NDQ6NDIuMDAwMDAwMDAwICswMjAw Ci0rKysgYi9zcmMvY29yZS9nYW1lX2NvcmUuY3BwCTIwMTEtMDEtMTkgMDA6NTk6MDIuNjY4OTU4 ODgzICswMTAwCi1AQCAtMjY1LDcgKzI2NSw3IEBACi0gCi0gCi0gCS8vIGFsaWduIHRleHQKLS0J Q0VHVUk6OkZvbnQgKmZvbnQgPSBDRUdVSTo6Rm9udE1hbmFnZXI6OmdldFNpbmdsZXRvbigpLmdl dEZvbnQoICJibHVlYm9sZF9tZWRpdW0iICk7Ci0rCUNFR1VJOjpGb250ICpmb250ID0gJkNFR1VJ OjpGb250TWFuYWdlcjo6Z2V0U2luZ2xldG9uKCkuZ2V0KCAiYmx1ZWJvbGRfbWVkaXVtIiApOwot IAkvLyBmaXhtZSA6IENhbid0IGhhbmRsZSBtdWx0aXBsZSBsaW5lcyBvZiB0ZXh0Ci0gCWZsb2F0 IHRleHRfd2lkdGggPSBmb250LT5nZXRUZXh0RXh0ZW50KCB0ZXh0ICkgKiBnbG9iYWxfZG93bnNj YWxleDsKLSAKLUBAIC0xMTgyLDcgKzExODIsNyBAQAotIAl0ZXh0X2RlZmF1bHQtPnNldFRleHQo IGd1aV90ZXh0ICk7Ci0gCi0gCS8vIGFsaWduIHRleHQKLS0JQ0VHVUk6OkZvbnQgKmZvbnQgPSBD RUdVSTo6Rm9udE1hbmFnZXI6OmdldFNpbmdsZXRvbigpLmdldEZvbnQoICJibHVlYm9sZF9tZWRp dW0iICk7Ci0rCUNFR1VJOjpGb250ICpmb250ID0gJkNFR1VJOjpGb250TWFuYWdlcjo6Z2V0U2lu Z2xldG9uKCkuZ2V0KCAiYmx1ZWJvbGRfbWVkaXVtIiApOwotIAlmbG9hdCB0ZXh0X3dpZHRoID0g Zm9udC0+Z2V0VGV4dEV4dGVudCggZ3VpX3RleHQgKSAqIGdsb2JhbF9kb3duc2NhbGV4OwotIAot IAl0ZXh0X2RlZmF1bHQtPnNldFdpZHRoKCBDRUdVSTo6VURpbSggMCwgKCB0ZXh0X3dpZHRoICsg MTUgKSAqIGdsb2JhbF91cHNjYWxleCApICk7Ci1AQCAtMTE5MCw3ICsxMTkwLDcgQEAKLSAJdGV4 dF9kZWZhdWx0LT5tb3ZlVG9Gcm9udCgpOwotIAotIAkvLyBzZXQgd2luZG93IGhlaWdodAotLQl0 ZXh0X2RlZmF1bHQtPnNldEhlaWdodCggQ0VHVUk6OlVEaW0oIDAsIGZvbnQtPmdldEZvbnRIZWln aHQoKSAqIGZvbnQtPmdldEZvcm1hdHRlZExpbmVDb3VudCggZ3VpX3RleHQsIHRleHRfZGVmYXVs dC0+Z2V0VW5jbGlwcGVkSW5uZXJSZWN0KCksIENFR1VJOjpMZWZ0QWxpZ25lZCApICsgKCAxMiAq IGdsb2JhbF91cHNjYWxleSApICkgKTsKLSsJdGV4dF9kZWZhdWx0LT5zZXRIZWlnaHQoIENFR1VJ OjpVRGltKCAwLCBmb250LT5nZXRGb250SGVpZ2h0KCkgKyAoIDEyICogZ2xvYmFsX3Vwc2NhbGV5 ICkgKSApOwotIAotIAl3aGlsZSggZHJhdyApCi0gCXsKLWRpZmYgLXVyIHNtYy0xLjkvc3JjL2Nv cmUvbWFpbi5jcHAgc21jLTEuOS1iL3NyYy9jb3JlL21haW4uY3BwCi0tLS0gYS9zcmMvY29yZS9t YWluLmNwcAkyMDA5LTA1LTEyIDEwOjM2OjA0LjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL2Nv cmUvbWFpbi5jcHAJMjAxMS0wMS0xOSAwMDo0MzozNy44MDk4ODQ4ODEgKzAxMDAKLUBAIC00NDQs MTMgKzQ0NCwxNSBAQAotIAotIAlpZiggcEd1aVN5c3RlbSApCi0gCXsKLS0JCWRlbGV0ZSBwR3Vp U3lzdGVtOwotKwkJQ0VHVUk6OlJlc291cmNlUHJvdmlkZXIqIHJwID0gcEd1aVN5c3RlbS0+Z2V0 UmVzb3VyY2VQcm92aWRlcigpOwotKwkJcEd1aVN5c3RlbS0+ZGVzdHJveSgpOwotIAkJcEd1aVN5 c3RlbSA9IE5VTEw7Ci0rCQlkZWxldGUgcnA7Ci0gCX0KLSAKLSAJaWYoIHBHdWlSZW5kZXJlciAp Ci0gCXsKLS0JCWRlbGV0ZSBwR3VpUmVuZGVyZXI7Ci0rCQlwR3VpUmVuZGVyZXItPmRlc3Ryb3ko ICpwR3VpUmVuZGVyZXIgKTsKLSAJCXBHdWlSZW5kZXJlciA9IE5VTEw7Ci0gCX0KLSAKLUBAIC01 MDcsNyArNTA5LDcgQEAKLSAJCX0KLSAJCWNhc2UgU0RMX1ZJREVPUkVTSVpFOgotIAkJewotLQkJ CXBHdWlSZW5kZXJlci0+c2V0RGlzcGxheVNpemUoIENFR1VJOjpTaXplKCBzdGF0aWNfY2FzdDxm bG9hdD4oZXYtPnJlc2l6ZS53KSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KGV2LT5yZXNpemUuaCkgKSAp OwotKwkJCXBHdWlTeXN0ZW0tPm5vdGlmeURpc3BsYXlTaXplQ2hhbmdlZCggQ0VHVUk6OlNpemUo IHN0YXRpY19jYXN0PGZsb2F0Pihldi0+cmVzaXplLncpLCBzdGF0aWNfY2FzdDxmbG9hdD4oZXYt PnJlc2l6ZS5oKSApICk7Ci0gCQkJYnJlYWs7Ci0gCQl9Ci0gCQljYXNlIFNETF9LRVlET1dOOgot ZGlmZiAtdXIgc21jLTEuOS9zcmMvZ3VpL2h1ZC5jcHAgc21jLTEuOS1iL3NyYy9ndWkvaHVkLmNw cAotLS0tIGEvc3JjL2d1aS9odWQuY3BwCTIwMDktMDUtMDEgMTU6MDA6MTYuMDAwMDAwMDAwICsw MjAwCi0rKysgYi9zcmMvZ3VpL2h1ZC5jcHAJMjAxMS0wMS0xOSAwMDo0MzozNy44MTY1NTAzNjUg KzAxMDAKLUBAIC05NDYsNyArOTQ2LDcgQEAKLSAJCW1fdGV4dF9kZWJ1Z190ZXh0LT5zZXRWaXNp YmxlKCAxICk7Ci0gCi0gCQkvLyB1cGRhdGUgcG9zaXRpb24KLS0JCUNFR1VJOjpGb250ICpmb250 ID0gQ0VHVUk6OkZvbnRNYW5hZ2VyOjpnZXRTaW5nbGV0b24oKS5nZXRGb250KCAiYmx1ZWJvbGRf bWVkaXVtIiApOwotKwkJQ0VHVUk6OkZvbnQgKmZvbnQgPSAmQ0VHVUk6OkZvbnRNYW5hZ2VyOjpn ZXRTaW5nbGV0b24oKS5nZXQoICJibHVlYm9sZF9tZWRpdW0iICk7Ci0gCQlmbG9hdCB0ZXh0X3dp ZHRoID0gZm9udC0+Z2V0VGV4dEV4dGVudCggZ3VpX3RleHQgKSAqIGdsb2JhbF9kb3duc2NhbGV4 OwotIAotIAkJaWYoIHRleHRfd2lkdGggPiA4MDAuMGYgKQotZGlmZiAtdXIgc21jLTEuOS9zcmMv aW5wdXQvbW91c2UuY3BwIHNtYy0xLjktYi9zcmMvaW5wdXQvbW91c2UuY3BwCi0tLS0gYS9zcmMv aW5wdXQvbW91c2UuY3BwCTIwMDktMDQtMjQgMjE6MTY6NTguMDAwMDAwMDAwICswMjAwCi0rKysg Yi9zcmMvaW5wdXQvbW91c2UuY3BwCTIwMTEtMDEtMTkgMDA6NDM6MzcuODEzMjE3NjIzICswMTAw Ci1AQCAtNDMyLDE3ICs0MzIsMTIgQEAKLSAKLSB2b2lkIGNNb3VzZUN1cnNvciA6OiBSZW5kZXIo IHZvaWQgKSBjb25zdAotIHsKLS0JaWYoICFtX2FjdGl2ZSApCi0tCXsKLSsJQ0VHVUk6Ok1vdXNl Q3Vyc29yICptb3VzZSA9IENFR1VJOjpNb3VzZUN1cnNvcjo6Z2V0U2luZ2xldG9uUHRyKCk7Ci0r Ci0rCWlmICggbV9hY3RpdmUgPT0gbW91c2UtPmlzVmlzaWJsZSgpICkKLSAJCXJldHVybjsKLS0J fQotIAotLQkvLyBSZW5kZXIgQ0VHVUkgTW91c2UKLS0JcEd1aVJlbmRlcmVyLT5zZXRRdWV1ZWlu Z0VuYWJsZWQoIDAgKTsKLS0JQ0VHVUk6Ok1vdXNlQ3Vyc29yICptb3VzZSA9IENFR1VJOjpNb3Vz ZUN1cnNvcjo6Z2V0U2luZ2xldG9uUHRyKCk7Ci0tCW1vdXNlLT5zZXRWaXNpYmxlKCAxICk7Ci0t CW1vdXNlLT5kcmF3KCk7Ci0tCW1vdXNlLT5zZXRWaXNpYmxlKCAwICk7Ci0rCW1vdXNlLT5zZXRW aXNpYmxlKCBtX2FjdGl2ZSApOwotIH0KLSAKLSB2b2lkIGNNb3VzZUN1cnNvciA6OiBVcGRhdGVf UG9zaXRpb24oIHZvaWQgKQotZGlmZiAtdXIgc21jLTEuOS9zcmMvbGV2ZWwvbGV2ZWxfc2V0dGlu Z3MuY3BwIHNtYy0xLjktYi9zcmMvbGV2ZWwvbGV2ZWxfc2V0dGluZ3MuY3BwCi0tLS0gYS9zcmMv bGV2ZWwvbGV2ZWxfc2V0dGluZ3MuY3BwCTIwMDktMDgtMDcgMDM6MDQ6MjguMDAwMDAwMDAwICsw MjAwCi0rKysgYi9zcmMvbGV2ZWwvbGV2ZWxfc2V0dGluZ3MuY3BwCTIwMTEtMDEtMTkgMDE6MDY6 NTkuMDY0MjU5MDcwICswMTAwCi1AQCAtMTYzLDggKzE2Myw4IEBACi0gCWVkaXRib3gtPnNldFRl eHQoIGludF90b19zdHJpbmcoIGJnX2NvbG9yXzIuYmx1ZSApLmNfc3RyKCkgKTsKLSAJLy8gcHJl dmlldyB3aW5kb3cKLSAJQ0VHVUk6OldpbmRvdyAqd2luZG93X2JhY2tncm91bmRfcHJldmlldyA9 IENFR1VJOjpXaW5kb3dNYW5hZ2VyOjpnZXRTaW5nbGV0b24oKS5nZXRXaW5kb3coICJ3aW5kb3df YmFja2dyb3VuZF9wcmV2aWV3IiApOwotLQliYWNrZ3JvdW5kX3ByZXZpZXctPlNldF9Qb3NfWCgg d2luZG93X2JhY2tncm91bmRfcHJldmlldy0+Z2V0VW5jbGlwcGVkUGl4ZWxSZWN0KCkuZF9sZWZ0 ICogZ2xvYmFsX2Rvd25zY2FsZXgsIDEgKTsKLS0JYmFja2dyb3VuZF9wcmV2aWV3LT5TZXRfUG9z X1koIHdpbmRvd19iYWNrZ3JvdW5kX3ByZXZpZXctPmdldFVuY2xpcHBlZFBpeGVsUmVjdCgpLmRf dG9wICogZ2xvYmFsX2Rvd25zY2FsZXksIDEgKTsKLSsJYmFja2dyb3VuZF9wcmV2aWV3LT5TZXRf UG9zX1goIHdpbmRvd19iYWNrZ3JvdW5kX3ByZXZpZXctPmdldFVuY2xpcHBlZE91dGVyUmVjdCgp LmRfbGVmdCAqIGdsb2JhbF9kb3duc2NhbGV4LCAxICk7Ci0rCWJhY2tncm91bmRfcHJldmlldy0+ U2V0X1Bvc19ZKCB3aW5kb3dfYmFja2dyb3VuZF9wcmV2aWV3LT5nZXRVbmNsaXBwZWRPdXRlclJl Y3QoKS5kX3RvcCAqIGdsb2JhbF9kb3duc2NhbGV5LCAxICk7Ci0gCi0gCVVwZGF0ZV9CR19Db2xv cnMoIENFR1VJOjpFdmVudEFyZ3MoKSApOwotIAotQEAgLTU1NSw4ICs1NTUsOCBAQAotIAotIAkv LyBzZXQgZGVmYXVsdCByZWN0Ci0gCUNFR1VJOjpXaW5kb3cgKndpbmRvd19iYWNrZ3JvdW5kX3By ZXZpZXcgPSBDRUdVSTo6V2luZG93TWFuYWdlcjo6Z2V0U2luZ2xldG9uKCkuZ2V0V2luZG93KCAi d2luZG93X2JhY2tncm91bmRfcHJldmlldyIgKTsKLS0JYmFja2dyb3VuZF9wcmV2aWV3LT5tX3Jl Y3QubV93ID0gd2luZG93X2JhY2tncm91bmRfcHJldmlldy0+Z2V0VW5jbGlwcGVkUGl4ZWxSZWN0 KCkuZ2V0V2lkdGgoKSAqIGdsb2JhbF9kb3duc2NhbGV4OwotLQliYWNrZ3JvdW5kX3ByZXZpZXct Pm1fcmVjdC5tX2ggPSB3aW5kb3dfYmFja2dyb3VuZF9wcmV2aWV3LT5nZXRVbmNsaXBwZWRQaXhl bFJlY3QoKS5nZXRIZWlnaHQoKSAqIGdsb2JhbF9kb3duc2NhbGV5OwotKwliYWNrZ3JvdW5kX3By ZXZpZXctPm1fcmVjdC5tX3cgPSB3aW5kb3dfYmFja2dyb3VuZF9wcmV2aWV3LT5nZXRVbmNsaXBw ZWRPdXRlclJlY3QoKS5nZXRXaWR0aCgpICogZ2xvYmFsX2Rvd25zY2FsZXg7Ci0rCWJhY2tncm91 bmRfcHJldmlldy0+bV9yZWN0Lm1faCA9IHdpbmRvd19iYWNrZ3JvdW5kX3ByZXZpZXctPmdldFVu Y2xpcHBlZE91dGVyUmVjdCgpLmdldEhlaWdodCgpICogZ2xvYmFsX2Rvd25zY2FsZXk7Ci0gCi0g CWlmKCAhRmlsZV9FeGlzdHMoIGZpbGVuYW1lICkgKQotIAl7Ci1kaWZmIC11ciBzbWMtMS45L3Ny Yy9vYmplY3RzL3Nwcml0ZS5jcHAgc21jLTEuOS1iL3NyYy9vYmplY3RzL3Nwcml0ZS5jcHAKLS0t LSBhL3NyYy9vYmplY3RzL3Nwcml0ZS5jcHAJMjAwOS0wNC0xOCAwOTo1NTowNi4wMDAwMDAwMDAg KzAyMDAKLSsrKyBiL3NyYy9vYmplY3RzL3Nwcml0ZS5jcHAJMjAxMS0wMS0xOSAwMDo0MzozNy44 MTMyMTc2MjMgKzAxMDAKLUBAIC0xNjYzLDcgKzE2NjMsNyBAQAotIAl3aW5kb3dfbmFtZS0+c2V0 VGV4dCggbmFtZSApOwotIAl3aW5kb3dfbmFtZS0+c2V0VG9vbHRpcFRleHQoIHRvb2x0aXAgKTsK LSAJLy8gZ2V0IHRleHQgd2lkdGgKLS0JQ0VHVUk6OkZvbnQgKmZvbnQgPSBDRUdVSTo6Rm9udE1h bmFnZXI6OmdldFNpbmdsZXRvbigpLmdldEZvbnQoICJibHVlYm9sZF9tZWRpdW0iICk7Ci0rCUNF R1VJOjpGb250ICpmb250ID0gJkNFR1VJOjpGb250TWFuYWdlcjo6Z2V0U2luZ2xldG9uKCkuZ2V0 KCAiYmx1ZWJvbGRfbWVkaXVtIiApOwotIAlmbG9hdCB0ZXh0X3dpZHRoID0gMTIgKyBmb250LT5n ZXRUZXh0RXh0ZW50KCBuYW1lICkgKiBnbG9iYWxfZG93bnNjYWxleDsKLSAJLy8gYWxsIG5hbWVz IHNob3VsZCBoYXZlIHRoZSBzYW1lIHdpZHRoCi0gCWlmKCB0ZXh0X3dpZHRoID4gbV9lZGl0b3Jf d2luZG93X25hbWVfd2lkdGggKQotZGlmZiAtdXIgc21jLTEuOS9zcmMvdmlkZW8vdmlkZW8uY3Bw IHNtYy0xLjktYi9zcmMvdmlkZW8vdmlkZW8uY3BwCi0tLS0gYS9zcmMvdmlkZW8vdmlkZW8uY3Bw CTIwMDktMDctMDQgMTE6NDY6NTYuMDAwMDAwMDAwICswMjAwCi0rKysgYi9zcmMvdmlkZW8vdmlk ZW8uY3BwCTIwMTEtMDEtMTkgMDE6MjI6NDUuMzM4NTI0NTkyICswMTAwCi1AQCAtMTAzLDE1ICsx MDMsMTUgQEAKLSAKLSAvKiAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogQ0VHVUkgcmVuZGVy ZXIgZmFrZSBjbGFzcyAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKi8K LSAKLS1jRmFrZV9SZW5kZXJlciA6OiBjRmFrZV9SZW5kZXJlciggdm9pZCApCi0tewotLQlkX2lk ZW50aWZpZXJTdHJpbmcgPSAiRmFrZSBSZW5kZXJlciI7Ci0tfQotKy8vY0Zha2VfUmVuZGVyZXIg OjogY0Zha2VfUmVuZGVyZXIoIHZvaWQgKQotKy8vewotKy8vCWRfaWRlbnRpZmllclN0cmluZyA9 ICJGYWtlIFJlbmRlcmVyIjsKLSsvL30KLSAKLS1jRmFrZV9SZW5kZXJlciA6OiB+Y0Zha2VfUmVu ZGVyZXIoIHZvaWQgKQotLXsKLSsvL2NGYWtlX1JlbmRlcmVyIDo6IH5jRmFrZV9SZW5kZXJlcigg dm9pZCApCi0rLy97Ci0gCi0tfQotKy8vfQotIAotIC8qICoqKiAqKiogKioqICoqKiAqKiogKioq ICoqKiBWaWRlbyBjbGFzcyAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiog Ki8KLSAKLUBAIC0xNTgsNyArMTU4LDcgQEAKLSAJc3RkOjpzdHJpbmcgbG9nX2R1bXBfZGlyID0g Ii9kZXYvbnVsbCI7Ci0gI2VuZGlmCi0gCS8vIGNyZWF0ZSBmYWtlIHN5c3RlbSBhbmQgcmVuZGVy ZXIKLS0JcEd1aVN5c3RlbSA9IG5ldyBDRUdVSTo6U3lzdGVtKCBuZXcgY0Zha2VfUmVuZGVyZXIo KSwgcnAsIE5VTEwsIE5VTEwsICIiLCBsb2dfZHVtcF9kaXIgKTsKLSsJcEd1aVN5c3RlbSA9ICZD RUdVSTo6U3lzdGVtOjpjcmVhdGUoICpuZXcgY0Zha2VfUmVuZGVyZXIoKSwgcnAsIE5VTEwsIE5V TEwsIE5VTEwsICIiLCBsb2dfZHVtcF9kaXIgKTsKLSB9Ci0gCi0gdm9pZCBjVmlkZW8gOjogRGVs ZXRlX0NFR1VJX0Zha2UoIHZvaWQgKSBjb25zdAotQEAgLTE2Niw3ICsxNjYsNyBAQAotIAlDRUdV STo6UmVzb3VyY2VQcm92aWRlciAqcnAgPSBwR3VpU3lzdGVtLT5nZXRSZXNvdXJjZVByb3ZpZGVy KCk7Ci0gCUNFR1VJOjpSZW5kZXJlciAqcmVuZGVyZXIgPSBwR3VpU3lzdGVtLT5nZXRSZW5kZXJl cigpOwotIAotLQlkZWxldGUgcEd1aVN5c3RlbTsKLSsJcEd1aVN5c3RlbS0+ZGVzdHJveSgpOwot IAlwR3VpU3lzdGVtID0gTlVMTDsKLSAJZGVsZXRlIHJlbmRlcmVyOwotIAlkZWxldGUgcnA7Ci1A QCAtMTc3LDcgKzE3Nyw3IEBACi0gCS8vIGNyZWF0ZSByZW5kZXJlcgotIAl0cnkKLSAJewotLQkJ cEd1aVJlbmRlcmVyID0gbmV3IENFR1VJOjpPcGVuR0xSZW5kZXJlciggMCwgc2NyZWVuLT53LCBz Y3JlZW4tPmggKTsKLSsJCXBHdWlSZW5kZXJlciA9ICZDRUdVSTo6T3BlbkdMUmVuZGVyZXI6OmNy ZWF0ZSggQ0VHVUk6OlNpemUoIHNjcmVlbi0+dywgc2NyZWVuLT5oICkgKTsKLSAJfQotIAkvLyBj YXRjaCBDRUdVSSBFeGNlcHRpb25zCi0gCWNhdGNoKCBDRUdVSTo6RXhjZXB0aW9uICZleCApCi1A QCAtMTg2LDEwICsxODYsMTAgQEAKLSAJCWV4aXQoIEVYSVRfRkFJTFVSRSApOwotIAl9Ci0gCi0t CS8qIGNyZWF0ZSBSZXNvdXJjZSBQcm92aWRlcgotLQkgKiBubyBuZWVkIHRvIGRlc3Ryb3kgaXQg bGF0ZXIgc2luY2UgaXQgaXMgaGFuZGxlZCBieSB0aGUgQ0VHVUkgcmVuZGVyZXIKLS0JKi8KLS0J Q0VHVUk6OkRlZmF1bHRSZXNvdXJjZVByb3ZpZGVyICpycCA9IHN0YXRpY19jYXN0PENFR1VJOjpE ZWZhdWx0UmVzb3VyY2VQcm92aWRlciAqPihwR3VpUmVuZGVyZXItPmNyZWF0ZVJlc291cmNlUHJv dmlkZXIoKSk7Ci0rCXBHdWlSZW5kZXJlci0+ZW5hYmxlRXh0cmFTdGF0ZVNldHRpbmdzKHRydWUp OwotKwotKwkvLyBjcmVhdGUgUmVzb3VyY2UgUHJvdmlkZXIKLSsJQ0VHVUk6OkRlZmF1bHRSZXNv dXJjZVByb3ZpZGVyICpycCA9IG5ldyBDRUdVSTo6RGVmYXVsdFJlc291cmNlUHJvdmlkZXI7Ci0g Ci0gCS8vIHNldCBSZXNvdXJjZSBQcm92aWRlciBkaXJlY3RvcmllcwotIAlycC0+c2V0UmVzb3Vy Y2VHcm91cERpcmVjdG9yeSggInNjaGVtZXMiLCBEQVRBX0RJUiAiLyIgR1VJX1NDSEVNRV9ESVIg Ii8iICk7Ci1AQCAtMjE1LDcgKzIxNSw3IEBACi0gCS8vIGNyZWF0ZSBzeXN0ZW0KLSAJdHJ5Ci0g CXsKLS0JCXBHdWlTeXN0ZW0gPSBuZXcgQ0VHVUk6OlN5c3RlbSggcEd1aVJlbmRlcmVyLCBycCwg TlVMTCwgTlVMTCwgIiIsIHBSZXNvdXJjZV9NYW5hZ2VyLT51c2VyX2RhdGFfZGlyICsgImNlZ3Vp LmxvZyIgKTsKLSsJCXBHdWlTeXN0ZW0gPSAmQ0VHVUk6OlN5c3RlbTo6Y3JlYXRlKCAqcEd1aVJl bmRlcmVyLCBycCwgTlVMTCwgTlVMTCwgTlVMTCwgIiIsIHBSZXNvdXJjZV9NYW5hZ2VyLT51c2Vy X2RhdGFfZGlyICsgImNlZ3VpLmxvZyIgKTsKLSAJfQotIAkvLyBjYXRjaCBDRUdVSSBFeGNlcHRp b25zCi0gCWNhdGNoKCBDRUdVSTo6RXhjZXB0aW9uICZleCApCi1AQCAtMjQyLDcgKzI0Miw3IEBA Ci0gCS8vIGxvYWQgdGhlIHNjaGVtZSBmaWxlLCB3aGljaCBhdXRvLWxvYWRzIHRoZSBpbWFnZXNl dAotIAl0cnkKLSAJewotLQkJQ0VHVUk6OlNjaGVtZU1hbmFnZXI6OmdldFNpbmdsZXRvbigpLmxv YWRTY2hlbWUoICJUYWhhcmV6TG9vay5zY2hlbWUiICk7Ci0rCQlDRUdVSTo6U2NoZW1lTWFuYWdl cjo6Z2V0U2luZ2xldG9uKCkuY3JlYXRlKCAiVGFoYXJlekxvb2suc2NoZW1lIiApOwotIAl9Ci0g CS8vIGNhdGNoIENFR1VJIEV4Y2VwdGlvbnMKLSAJY2F0Y2goIENFR1VJOjpFeGNlcHRpb24gJmV4 ICkKLUBAIC0yNTQsOSArMjU0LDcgQEAKLSAJLy8gZGVmYXVsdCBtb3VzZSBjdXJzb3IKLSAJcEd1 aVN5c3RlbS0+c2V0RGVmYXVsdE1vdXNlQ3Vyc29yKCAiVGFoYXJlekxvb2siLCAiTW91c2VBcnJv dyIgKTsKLSAJLy8gZm9yY2UgbmV3IG1vdXNlIGltYWdlCi0tCUNFR1VJOjpNb3VzZUN1cnNvcjo6 Z2V0U2luZ2xldG9uKCkuc2V0SW1hZ2UoICZDRUdVSTo6SW1hZ2VzZXRNYW5hZ2VyOjpnZXRTaW5n bGV0b24oKS5nZXRJbWFnZXNldCggIlRhaGFyZXpMb29rIiApLT5nZXRJbWFnZSggIk1vdXNlQXJy b3ciICkgKTsKLS0JLy8gaGlkZSBDRUdVSSBtb3VzZSBhbHdheXMgYmVjYXVzZSB3ZSByZW5kZXIg aXQgbWFudWFsbHkKLS0JQ0VHVUk6Ok1vdXNlQ3Vyc29yOjpnZXRTaW5nbGV0b24oKS5oaWRlKCk7 Ci0rCUNFR1VJOjpNb3VzZUN1cnNvcjo6Z2V0U2luZ2xldG9uKCkuc2V0SW1hZ2UoICZDRUdVSTo6 SW1hZ2VzZXRNYW5hZ2VyOjpnZXRTaW5nbGV0b24oKS5nZXQoICJUYWhhcmV6TG9vayIgKS5nZXRJ bWFnZSggIk1vdXNlQXJyb3ciICkgKTsKLSAJLy8gZGVmYXVsdCB0b29sdGlwCi0gCXBHdWlTeXN0 ZW0tPnNldERlZmF1bHRUb29sdGlwKCAiVGFoYXJlekxvb2svVG9vbHRpcCIgKTsKLSAJLy8gY3Jl YXRlIGRlZmF1bHQgcm9vdCB3aW5kb3cKLUBAIC01NTMsNyArNTUxLDcgQEAKLSAJCXBGb250LT5S ZXN0b3JlX1RleHR1cmVzKCk7Ci0gCi0gCQkvLyBzZW5kIG5ldyBzaXplIHRvIENFR1VJCi0tCQlw R3VpUmVuZGVyZXItPnNldERpc3BsYXlTaXplKCBDRUdVSTo6U2l6ZSggc3RhdGljX2Nhc3Q8Zmxv YXQ+KHNjcmVlbl93KSwgc3RhdGljX2Nhc3Q8ZmxvYXQ+KHNjcmVlbl9oKSApICk7Ci0rCQlwR3Vp U3lzdGVtLT5ub3RpZnlEaXNwbGF5U2l6ZUNoYW5nZWQoIENFR1VJOjpTaXplKCBzdGF0aWNfY2Fz dDxmbG9hdD4oc2NyZWVuX3cpLCBzdGF0aWNfY2FzdDxmbG9hdD4oc2NyZWVuX2gpICkgKTsKLSAK LSAJCS8vIGNoZWNrIGlmIENFR1VJIGlzIGluaXRpYWxpemVkCi0gCQlib29sIGNlZ3VpX2luaXRp YWxpemVkID0gcEd1aVN5c3RlbS0+Z2V0R1VJU2hlZXQoKSAhPSBOVUxMOwotZGlmZiAtdXIgc21j LTEuOS9zcmMvdmlkZW8vdmlkZW8uaCBzbWMtMS45LWIvc3JjL3ZpZGVvL3ZpZGVvLmgKLS0tLSBh L3NyYy92aWRlby92aWRlby5oCTIwMDktMDctMDQgMTA6NDk6NTAuMDAwMDAwMDAwICswMjAwCi0r KysgYi9zcmMvdmlkZW8vdmlkZW8uaAkyMDExLTAxLTE5IDAxOjE2OjQyLjc5MTI4MzM3OSArMDEw MAotQEAgLTIzLDcgKzIzLDcgQEAKLSAjaW5jbHVkZSAiU0RMX29wZW5nbC5oIgotIC8vIENFR1VJ Ci0gI2luY2x1ZGUgIkNFR1VJLmgiCi0tI2luY2x1ZGUgIlJlbmRlcmVyTW9kdWxlcy9PcGVuR0xH VUlSZW5kZXJlci9vcGVuZ2xyZW5kZXJlci5oIgotKyNpbmNsdWRlIDxSZW5kZXJlck1vZHVsZXMv T3BlbkdML0NFR1VJT3BlbkdMUmVuZGVyZXIuaD4KLSAKLSBuYW1lc3BhY2UgU01DCi0gewotQEAg LTEyOSwzMSArMTI5LDEwMCBAQAotIAlFRkZFQ1RfSU5fQU1PVU5UCi0gfTsKLSAKLS0vKiAqKiog KioqICoqKiAqKiogKioqICoqKiAqKiogQ0VHVUkgcmVuZGVyZXIgZmFrZSBjbGFzcyAqKiogKioq ICoqKiAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKi8KLSsvKiAqKiogKioqICoqKiAqKiog KioqICoqKiAqKiogQ0VHVUkgcmVuZGVyZXIgZmFrZSBjbGFzc2VzICoqKiAqKiogKioqICoqKiAq KiogKioqICoqKiAqKiogKioqICoqKiAqLwotKy8vIENFR1VJIDAuNy54IHJlcXVpcmVzIG1vcmUg J2Zha2UnIGNsYXNzZXMgdGhhbiB0aGUgMC42LnggdmVyc2lvbiBkaWQuLi4KLStjbGFzcyBjRmFr ZV9HZW9tZXRyeUJ1ZmZlciA6IHB1YmxpYyBDRUdVSTo6R2VvbWV0cnlCdWZmZXIKLSt7Ci0rCXZv aWQgZHJhdygpIGNvbnN0IHt9Ci0rCXZvaWQgc2V0VHJhbnNsYXRpb24oY29uc3QgQ0VHVUk6OlZl Y3RvcjMmKSB7fQotKwl2b2lkIHNldFJvdGF0aW9uKGNvbnN0IENFR1VJOjpWZWN0b3IzJikge30K LSsJdm9pZCBzZXRQaXZvdChjb25zdCBDRUdVSTo6VmVjdG9yMyYpIHt9Ci0rCXZvaWQgc2V0Q2xp cHBpbmdSZWdpb24oY29uc3QgQ0VHVUk6OlJlY3QmKSB7fQotKwl2b2lkIGFwcGVuZFZlcnRleChj b25zdCBDRUdVSTo6VmVydGV4Jikge30KLSsJdm9pZCBhcHBlbmRHZW9tZXRyeShjb25zdCBDRUdV STo6VmVydGV4KiBjb25zdCwgQ0VHVUk6OnVpbnQpIHt9Ci0rCXZvaWQgc2V0QWN0aXZlVGV4dHVy ZShDRUdVSTo6VGV4dHVyZSopIHt9Ci0rCXZvaWQgcmVzZXQoKSB7fQotKwlDRUdVSTo6VGV4dHVy ZSogZ2V0QWN0aXZlVGV4dHVyZSgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KLSsJQ0VHVUk6OnVpbnQg Z2V0VmVydGV4Q291bnQoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0rCUNFR1VJOjp1aW50IGdldEJh dGNoQ291bnQoKSBjb25zdCB7IHJldHVybiAwOyB9Ci0rCXZvaWQgc2V0UmVuZGVyRWZmZWN0KENF R1VJOjpSZW5kZXJFZmZlY3QqKSB7fQotKwlDRUdVSTo6UmVuZGVyRWZmZWN0KiBnZXRSZW5kZXJF ZmZlY3QoKSB7IHJldHVybiAwOyB9Ci0rfTsKLSAKLS1jbGFzcyBjRmFrZV9SZW5kZXJlciA6IHB1 YmxpYyBDRUdVSTo6UmVuZGVyZXIKLStjbGFzcyBjRmFrZV9UZXh0dXJlIDogcHVibGljIENFR1VJ OjpUZXh0dXJlCi0rewotK3B1YmxpYzoKLSsJY0Zha2VfVGV4dHVyZSgpIDoKLSsJICBtX3NpemUo MSwgMSksCi0rCSAgbV9zY2FsaW5nKDEsIDEpIHt9Ci0rCi0rCWNvbnN0IENFR1VJOjpTaXplJiBn ZXRTaXplKCkgY29uc3QgeyByZXR1cm4gbV9zaXplOyB9Ci0rCWNvbnN0IENFR1VJOjpTaXplJiBn ZXRPcmlnaW5hbERhdGFTaXplKCkgY29uc3QgeyByZXR1cm4gbV9zaXplOyB9Ci0rCWNvbnN0IENF R1VJOjpWZWN0b3IyJiBnZXRUZXhlbFNjYWxpbmcoKSBjb25zdCB7IHJldHVybiBtX3NjYWxpbmc7 IH0KLSsJdm9pZCBsb2FkRnJvbUZpbGUoY29uc3QgQ0VHVUk6OlN0cmluZyYsIGNvbnN0IENFR1VJ OjpTdHJpbmcmKSB7fQotKwl2b2lkIGxvYWRGcm9tTWVtb3J5KGNvbnN0IHZvaWQqLCBjb25zdCBD RUdVSTo6U2l6ZSYsIENFR1VJOjpUZXh0dXJlOjpQaXhlbEZvcm1hdCkge30KLSsJdm9pZCBzYXZl VG9NZW1vcnkodm9pZCopIHt9Ci0rCi0rcHJpdmF0ZToKLSsJQ0VHVUk6OlNpemUgbV9zaXplOwot KwlDRUdVSTo6VmVjdG9yMiBtX3NjYWxpbmc7Ci0rfTsKLSsKLStjbGFzcyBjRmFrZV9SZW5kZXJU YXJnZXQgOiBwdWJsaWMgQ0VHVUk6OlJlbmRlclRhcmdldAotIHsKLSBwdWJsaWM6Ci0tCWNGYWtl X1JlbmRlcmVyKCB2b2lkICk7Ci0tCXZpcnR1YWwgfmNGYWtlX1JlbmRlcmVyKCB2b2lkICk7Ci0r CWNGYWtlX1JlbmRlclRhcmdldCgpIDogbV9hcmVhKDAsIDAsIDAsIDApIHt9Ci0rCXZvaWQgZHJh dyhjb25zdCBDRUdVSTo6R2VvbWV0cnlCdWZmZXImKSB7fQotKwl2b2lkIGRyYXcoY29uc3QgQ0VH VUk6OlJlbmRlclF1ZXVlJikge30KLSsJdm9pZCBzZXRBcmVhKGNvbnN0IENFR1VJOjpSZWN0Jikg e30KLSsJY29uc3QgQ0VHVUk6OlJlY3QmIGdldEFyZWEoKSBjb25zdCB7IHJldHVybiBtX2FyZWE7 IH0KLSsJYm9vbCBpc0ltYWdlcnlDYWNoZSgpIGNvbnN0IHsgcmV0dXJuIGZhbHNlOyB9Ci0rCXZv aWQgYWN0aXZhdGUoKSB7fQotKwl2b2lkIGRlYWN0aXZhdGUoKSB7fQotKwl2b2lkIHVucHJvamVj dFBvaW50KGNvbnN0IENFR1VJOjpHZW9tZXRyeUJ1ZmZlciYsIGNvbnN0IENFR1VJOjpWZWN0b3Iy JiwgQ0VHVUk6OlZlY3RvcjImKSBjb25zdCB7fQotKwotK3ByaXZhdGU6Ci0rCUNFR1VJOjpSZWN0 IG1fYXJlYTsKLSt9OwotIAotLQl2aXJ0dWFsCXZvaWQgYWRkUXVhZChjb25zdCBDRUdVSTo6UmVj dCYgZGVzdF9yZWN0LCBmbG9hdCB6LCBjb25zdCBDRUdVSTo6VGV4dHVyZSogdGV4LCBjb25zdCBD RUdVSTo6UmVjdCYgdGV4dHVyZV9yZWN0LCBjb25zdCBDRUdVSTo6Q29sb3VyUmVjdCYgY29sb3Vy cywgQ0VHVUk6OlF1YWRTcGxpdE1vZGUgcXVhZF9zcGxpdF9tb2RlKSB7fTsKLS0JdmlydHVhbAl2 b2lkIGRvUmVuZGVyKHZvaWQpIHt9OwotLQl2aXJ0dWFsCXZvaWQgY2xlYXJSZW5kZXJMaXN0KHZv aWQpIHt9OwotLQl2aXJ0dWFsIHZvaWQgc2V0UXVldWVpbmdFbmFibGVkKGJvb2wgc2V0dGluZykg e307Ci0tCXZpcnR1YWwJQ0VHVUk6OlRleHR1cmUgKmNyZWF0ZVRleHR1cmUodm9pZCkgeyByZXR1 cm4gTlVMTDsgfTsKLS0JdmlydHVhbAlDRUdVSTo6VGV4dHVyZSAqY3JlYXRlVGV4dHVyZShjb25z dCBDRUdVSTo6U3RyaW5nJiBmaWxlbmFtZSwgY29uc3QgQ0VHVUk6OlN0cmluZyYgcmVzb3VyY2VH cm91cCkgeyByZXR1cm4gTlVMTDsgfTsKLS0JdmlydHVhbAlDRUdVSTo6VGV4dHVyZSAqY3JlYXRl VGV4dHVyZShmbG9hdCBzaXplKSB7IHJldHVybiBOVUxMOyB9OwotLQl2aXJ0dWFsCXZvaWQgZGVz dHJveVRleHR1cmUoQ0VHVUk6OlRleHR1cmUqIHRleHR1cmUpIHt9OwotLQl2aXJ0dWFsIHZvaWQg ZGVzdHJveUFsbFRleHR1cmVzKHZvaWQpIHt9OwotLQl2aXJ0dWFsIGJvb2wgaXNRdWV1ZWluZ0Vu YWJsZWQodm9pZCkgY29uc3QgeyByZXR1cm4gMDsgfTsKLS0JdmlydHVhbCBmbG9hdCBnZXRXaWR0 aCh2b2lkKSBjb25zdCB7IHJldHVybiAwOyB9OwotLQl2aXJ0dWFsIGZsb2F0IGdldEhlaWdodCh2 b2lkKSBjb25zdCB7IHJldHVybiAwOyB9OwotLQl2aXJ0dWFsIENFR1VJOjpTaXplIGdldFNpemUo dm9pZCkgY29uc3QgeyByZXR1cm4gQ0VHVUk6OlNpemUoKTt9OwotLQl2aXJ0dWFsIENFR1VJOjpS ZWN0IGdldFJlY3Qodm9pZCkgY29uc3QgeyByZXR1cm4gQ0VHVUk6OlJlY3QoKTt9OwotLQl2aXJ0 dWFsCXVuc2lnbmVkIGludCBnZXRNYXhUZXh0dXJlU2l6ZSh2b2lkKSBjb25zdCB7IHJldHVybiAw OyB9OwotLQl2aXJ0dWFsCXVuc2lnbmVkIGludCBnZXRIb3J6U2NyZWVuRFBJKHZvaWQpIGNvbnN0 IHsgcmV0dXJuIDA7IH07Ci0tCXZpcnR1YWwJdW5zaWduZWQgaW50IGdldFZlcnRTY3JlZW5EUEko dm9pZCkgY29uc3QgeyByZXR1cm4gMDsgfTsKLStjbGFzcyBjRmFrZV9SZW5kZXJlciA6IHB1Ymxp YyBDRUdVSTo6UmVuZGVyZXIKLSt7Ci0rcHVibGljOgotKwljRmFrZV9SZW5kZXJlciggdm9pZCAp IDoKLSsJICBtX3NpemUoMCwgMCksCi0rCSAgbV9kcGkoMCwgMCksCi0rCSAgbV9pZGVudGlmaWVy U3RyaW5nKCJGYWtlIFJlbmRlcmVyIiksCi0rCSAgbV9yb290KG1fdGFyZ2V0KSB7fQotKwl+Y0Zh a2VfUmVuZGVyZXIoIHZvaWQgKSB7fQotKwotKwlDRUdVSTo6UmVuZGVyaW5nUm9vdCYgZ2V0RGVm YXVsdFJlbmRlcmluZ1Jvb3QoKSB7IHJldHVybiBtX3Jvb3Q7IH0KLSsJQ0VHVUk6Okdlb21ldHJ5 QnVmZmVyJiBjcmVhdGVHZW9tZXRyeUJ1ZmZlcigpIHsgcmV0dXJuIG1fZ2VvbWV0cnk7IH0KLSsJ dm9pZCBkZXN0cm95R2VvbWV0cnlCdWZmZXIoY29uc3QgQ0VHVUk6Okdlb21ldHJ5QnVmZmVyJikg e30KLSsJdm9pZCBkZXN0cm95QWxsR2VvbWV0cnlCdWZmZXJzKCkge30KLSsJQ0VHVUk6OlRleHR1 cmVUYXJnZXQqIGNyZWF0ZVRleHR1cmVUYXJnZXQoKSB7IHJldHVybiAwOyB9Ci0rCXZvaWQgZGVz dHJveVRleHR1cmVUYXJnZXQoQ0VHVUk6OlRleHR1cmVUYXJnZXQqKSB7fQotKwl2b2lkIGRlc3Ry b3lBbGxUZXh0dXJlVGFyZ2V0cygpIHt9Ci0rCUNFR1VJOjpUZXh0dXJlJiBjcmVhdGVUZXh0dXJl KCkgeyByZXR1cm4gbV90ZXh0dXJlOyB9Ci0rCUNFR1VJOjpUZXh0dXJlJiBjcmVhdGVUZXh0dXJl KGNvbnN0IENFR1VJOjpTdHJpbmcmLCBjb25zdCBDRUdVSTo6U3RyaW5nJikgeyByZXR1cm4gbV90 ZXh0dXJlOyB9Ci0rCUNFR1VJOjpUZXh0dXJlJiBjcmVhdGVUZXh0dXJlKGNvbnN0IENFR1VJOjpT aXplJikgeyByZXR1cm4gbV90ZXh0dXJlOyB9Ci0rCXZvaWQgZGVzdHJveVRleHR1cmUoQ0VHVUk6 OlRleHR1cmUmKSB7fQotKwl2b2lkIGRlc3Ryb3lBbGxUZXh0dXJlcygpIHt9Ci0rCXZvaWQgYmVn aW5SZW5kZXJpbmcoKSB7fQotKwl2b2lkIGVuZFJlbmRlcmluZygpIHt9Ci0rCXZvaWQgc2V0RGlz cGxheVNpemUoY29uc3QgQ0VHVUk6OlNpemUmKSB7fQotKwljb25zdCBDRUdVSTo6U2l6ZSYgZ2V0 RGlzcGxheVNpemUoKSBjb25zdCB7IHJldHVybiBtX3NpemU7IH0KLSsJY29uc3QgQ0VHVUk6OlZl Y3RvcjImIGdldERpc3BsYXlEUEkoKSBjb25zdCB7cmV0dXJuIG1fZHBpOyB9Ci0rCUNFR1VJOjp1 aW50IGdldE1heFRleHR1cmVTaXplKCkgY29uc3QgeyByZXR1cm4gMDsgfQotKwljb25zdCBDRUdV STo6U3RyaW5nJiBnZXRJZGVudGlmaWVyU3RyaW5nKCkgY29uc3QgeyByZXR1cm4gbV9pZGVudGlm aWVyU3RyaW5nOyB9Ci0rCi0rcHJpdmF0ZToKLSsJQ0VHVUk6OlNpemUgbV9zaXplOwotKwlDRUdV STo6VmVjdG9yMiBtX2RwaTsKLSsJQ0VHVUk6OlN0cmluZyBtX2lkZW50aWZpZXJTdHJpbmc7Ci0r CWNGYWtlX0dlb21ldHJ5QnVmZmVyIG1fZ2VvbWV0cnk7Ci0rCWNGYWtlX1RleHR1cmUgbV90ZXh0 dXJlOwotKwljRmFrZV9SZW5kZXJUYXJnZXQgbV90YXJnZXQ7Ci0rCUNFR1VJOjpSZW5kZXJpbmdS b290IG1fcm9vdDsKLSB9OwotIAotIC8qICoqKiAqKiogKioqICoqKiAqKiogKioqICoqKiBWaWRl byBjbGFzcyAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKioqICoqKiAqKiogKi8KZGlmZiAt LWdpdCBhL3NyY3BrZ3MvU01DL3RlbXBsYXRlIGIvc3JjcGtncy9TTUMvdGVtcGxhdGUKZGVsZXRl ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGQ2NzQ2OWZjMThhOC4uMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvU01DL3RlbXBsYXRlCisrKyAvZGV2L251bGwKQEAgLTEsMzcgKzAsMCBAQAotIyBU ZW1wbGF0ZSBmaWxlIGZvciAnU01DJwotcGtnbmFtZT1TTUMKLXZlcnNpb249MS45Ci1yZXZpc2lv bj05Ci13cmtzcmM9JHtwa2duYW1lLCx9LSR7dmVyc2lvbn0KLWJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKLWhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgbGlidG9vbCBnZXR0ZXh0LWRldmVsIHBr Zy1jb25maWcgdW56aXAiCi1tYWtlZGVwZW5kcz0iTWVzYUxpYi1kZXZlbCBib29zdC1kZXZlbCBj ZWd1aTA3LWRldmVsIGdldHRleHQtZGV2ZWwKLSBTRExfaW1hZ2UtZGV2ZWwgU0RMX21peGVyLWRl dmVsIFNETF90dGYtZGV2ZWwiCi1zaG9ydF9kZXNjPSJUd28tZGltZW5zaW9uYWwgcGxhdGZvcm0g Z2FtZSBzaW1pbGFyIHRvIFN1cGVyIE1hcmlvIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhh bkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCi1ob21lcGFnZT0i aHR0cDovL3d3dy5zZWNyZXRtYXJ5by5vcmcvIgotZGlzdGZpbGVzPSIKLSAke1NPVVJDRUZPUkdF X1NJVEV9L3NtY2xvbmUvJHtwa2duYW1lLCx9LSR7dmVyc2lvbn0udGFyLmJ6MgotICR7U09VUkNF Rk9SR0VfU0lURX0vc21jbG9uZS9TTUNfTXVzaWNfNS4wX2hpZ2guemlwIgotY2hlY2tzdW09Igot IGI0MTk0ZTcwZDNmMWRlM2RhODg0ZGQxYTExZTRmNWNlYzI1YTIwNWY2NmEzYjg1Y2M5ZmMxYzg2 Mjg5YjIzN2QKLSBjNWJiMmUxODMwYzdjYmU0OTljOTM4NTFmNWEwMmIyYjkwMGI0NzMwZDJjN2Ex MzNhNDRhN2I0M2EyOTdkYWI4IgotcmVwbGFjZXM9IlNNQy1kYXRhPj0wIgotCi1DWFhGTEFHUz0i LWZwZXJtaXNzaXZlIC1zdGQ9YysrMTEiCi1MREZMQUdTPSItV2wsLS1uby1hcy1uZWVkZWQgLWxY MTEgLWxib29zdF9zeXN0ZW0iCi0KLXBvc3RfZXh0cmFjdCgpIHsKLQkjIHJlbW92ZSBDUnMgZnJv bSBlbmQgb2YgbGluZQotCWZpbmQgJHt3cmtzcmN9L3NyYyAtdHlwZSBmIC1leGVjIHNlZCAtaSAi e30iIC1lICJzO1xyJDs7IiBcOwotCW12ICR7WEJQU19CVUlMRERJUn0vZGF0YS9tdXNpYy8qICR7 d3Jrc3JjfS9kYXRhL211c2ljCi19Ci1wcmVfY29uZmlndXJlKCkgewotCXZzZWQgLWkgY29uZmln dXJlLmFjIC1lICIvQU1fSU5JVF9BVVRPTUFLRS9zLykvIHN1YmRpci1vYmplY3RzKS8iCi0JTk9D T05GSUdVUkU9MSAuL2F1dG9nZW4uc2gKLX0KLXBvc3RfaW5zdGFsbCgpIHsKLQl2aW5zdGFsbCAk e0ZJTEVTRElSfS9zbWMuZGVza3RvcCA2NDQgdXNyL3NoYXJlL2FwcGxpY2F0aW9ucwotCXZpbnN0 YWxsICR7RklMRVNESVJ9L3NtYy5wbmcgNjQ0IHVzci9zaGFyZS9waXhtYXBzCi19CmRpZmYgLS1n aXQgYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQt cGFja2FnZXMvdGVtcGxhdGUKaW5kZXggMGQxMTgwYWQ0OTAzLi40OTBjZjQwZjhiOTYgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Jl bW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKQEAgLTEzLDYgKzEzLDcgQEAgcmVwbGFjZXM9IgogIE1v aW5Nb2luPD0xLjkuMTFfMQogIE11bHRpTUM8PTAuNi4xM18xCiAgUGxhdGludW05LXRoZW1lPD0w LjAuMC4yMDE3MDcyMF8zCisgU01DPD0xLjlfOQogIFZlbm9tPD0wLjUuNV8xCiAgWG9yQ3Vyc2Vz PD0wLjIuMl8xCiAgYWNtZS1jbGllbnQ8PTAuMS4xNl81CgpGcm9tIDY5ODk2MmU1ZjE0MDQxNWEy MDJjYjVjYjQyYTE0ZDM5MDgyNGVjYTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpv ZWwgQmVja21leWVyIDxqb2VsQGJlY2ttZXllci51cz4KRGF0ZTogTW9uLCAxNSBBdWcgMjAyMiAw ODozNjoyOCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMi8zXSBjZWd1aTA3OiByZW1vdmUgcGFja2Fn ZQoKaXQgd2FzIG9ubHkgdXNlZCBmb3IgU01DLCB3aGljaCB3YXMgYWxyZWFkeSByZW1vdmVkCi0t LQogc3JjcGtncy9jZWd1aTA3LWRhdGEgICAgICAgICAgICAgICAgICAgIHwgIDEgLQogc3JjcGtn cy9jZWd1aTA3LWRldmVsICAgICAgICAgICAgICAgICAgIHwgIDEgLQogc3JjcGtncy9jZWd1aTA3 LWRvYyAgICAgICAgICAgICAgICAgICAgIHwgIDEgLQogc3JjcGtncy9jZWd1aTA3L3BhdGNoZXMv Zml4LWJ1aWxkLnBhdGNoIHwgODEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9jZWd1 aTA3L3RlbXBsYXRlICAgICAgICAgICAgICAgIHwgOTEgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogc3JjcGtncy9jZWd1aTA3L3VwZGF0ZSAgICAgICAgICAgICAgICAgIHwgIDEgLQogc3JjcGtn cy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlICAgICAgIHwgIDQgKysKIDcgZmlsZXMgY2hhbmdl ZCwgNCBpbnNlcnRpb25zKCspLCAxNzYgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMjAwMDAg c3JjcGtncy9jZWd1aTA3LWRhdGEKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2NlZ3VpMDct ZGV2ZWwKIGRlbGV0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL2NlZ3VpMDctZG9jCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9jZWd1aTA3L3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy9jZWd1aTA3L3RlbXBsYXRlCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9jZWd1aTA3L3VwZGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2VndWkwNy1kYXRh IGIvc3JjcGtncy9jZWd1aTA3LWRhdGEKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGY3 ZjAyZjY1YWM0Yy4uMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2VndWkwNy1kYXRhCisrKyAv ZGV2L251bGwKQEAgLTEgKzAsMCBAQAotY2VndWkwNwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZp bGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2VndWkwNy1kZXZlbCBiL3NyY3BrZ3MvY2VndWkwNy1k ZXZlbApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZjdmMDJmNjVhYzRjLi4wMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9jZWd1aTA3LWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAs MCBAQAotY2VndWkwNwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvY2VndWkwNy1kb2MgYi9zcmNwa2dzL2NlZ3VpMDctZG9jCmRlbGV0ZWQgZmlsZSBtb2Rl IDEyMDAwMAppbmRleCBmN2YwMmY2NWFjNGMuLjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2Nl Z3VpMDctZG9jCisrKyAvZGV2L251bGwKQEAgLTEgKzAsMCBAQAotY2VndWkwNwpcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2VndWkwNy9wYXRjaGVzL2Zp eC1idWlsZC5wYXRjaCBiL3NyY3BrZ3MvY2VndWkwNy9wYXRjaGVzL2ZpeC1idWlsZC5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMjUzMzA2MTgxMGFkLi4wMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9jZWd1aTA3L3BhdGNoZXMvZml4LWJ1aWxkLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsODEgKzAsMCBAQAotLS0tIGEvY2VndWkvaW5jbHVkZS9DRUdVSVN5c3RlbS5oCi0r KysgYi9jZWd1aS9pbmNsdWRlL0NFR1VJU3lzdGVtLmgKLUBAIC0xMTIzLDEyICsxMTIzLDYgQEAK LSAgICAgICAgICAgIFNjcmlwdE1vZHVsZSogc2NyaXB0TW9kdWxlLCBjb25zdCBTdHJpbmcmIGNv bmZpZ0ZpbGUsCi0gICAgICAgICAgICBjb25zdCBTdHJpbmcmIGxvZ0ZpbGUpOwotIAotLSAgICAv KiEKLS0gICAgXGJyaWVmCi0tICAgICAgICBEZXN0cnVjdG9yIGZvciBTeXN0ZW0gb2JqZWN0cy4K LS0gICAgKi8KLS0gICAgflN5c3RlbSh2b2lkKTsKLS0KLSAJLyohCi0gCVxicmllZgotIAkJR2l2 ZW4gUG9pbnQgXGEgcHQsIHJldHVybiBhIHBvaW50ZXIgdG8gdGhlIFdpbmRvdyB0aGF0IHNob3Vs ZCByZWNlaXZlIGEgbW91c2UgaW5wdXQgaWYgXGEgcHQgaXMgdGhlIG1vdXNlIGxvY2F0aW9uLgot QEAgLTEzNjQsNiArMTM1OCwxMyBAQAotICAgICBSZW5kZXJlZFN0cmluZ1BhcnNlciogZF9jdXN0 b21SZW5kZXJlZFN0cmluZ1BhcnNlcjsKLSAgICAgLy8hIHRydWUgaWYgbW91c2UgY2xpY2sgZXZl bnRzIHdpbGwgYmUgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQuCi0gICAgIGJvb2wgZF9nZW5lcmF0 ZU1vdXNlQ2xpY2tFdmVudHM7Ci0rCi0rcHJvdGVjdGVkOgotKyAgICAvKiEKLSsgICAgXGJyaWVm Ci0rICAgICAgICBEZXN0cnVjdG9yIGZvciBTeXN0ZW0gb2JqZWN0cy4KLSsgICAgKi8KLSsgICAg flN5c3RlbSh2b2lkKTsKLSB9OwotIAotIH0gLy8gRW5kIG9mICBDRUdVSSBuYW1lc3BhY2Ugc2Vj dGlvbgotLS0tIGEvY2VndWkvaW5jbHVkZS9SZW5kZXJlck1vZHVsZXMvT3BlbkdML0NFR1VJT3Bl bkdMUmVuZGVyZXIuaAotKysrIGIvY2VndWkvaW5jbHVkZS9SZW5kZXJlck1vZHVsZXMvT3BlbkdM L0NFR1VJT3BlbkdMUmVuZGVyZXIuaAotQEAgLTI5MSwxMiArMjkxLDYgQEAKLSAgICAgKi8KLSAg ICAgT3BlbkdMUmVuZGVyZXIoY29uc3QgU2l6ZSYgZGlzcGxheV9zaXplLCBjb25zdCBUZXh0dXJl VGFyZ2V0VHlwZSB0dF90eXBlKTsKLSAKLS0gICAgLyohCi0tICAgIFxicmllZgotLSAgICAgICAg RGVzdHJ1Y3RvciBmb3IgT3BlbkdMUmVuZGVyZXIgb2JqZWN0cwotLSAgICAqLwotLSAgICB2aXJ0 dWFsIH5PcGVuR0xSZW5kZXJlcigpOwotLQotICAgICAvLyEgaW5pdCB0aGUgZXh0cmEgR0wgc3Rh dGVzIGVuYWJsZWQgdmlhIGVuYWJsZUV4dHJhU3RhdGVTZXR0aW5ncwotICAgICB2b2lkIHNldHVw RXh0cmFTdGF0ZXMoKTsKLSAKLUBAIC0zMzYsNiArMzMwLDEzIEBACi0gICAgIE9HTFRleHR1cmVU YXJnZXRGYWN0b3J5KiBkX3RleHR1cmVUYXJnZXRGYWN0b3J5OwotICAgICAvLyEgV2hhdCBibGVu ZCBtb2RlIHdlIHRoaW5rIGlzIGFjdGl2ZS4KLSAgICAgQmxlbmRNb2RlIGRfYWN0aXZlQmxlbmRN b2RlOwotKwotK3Byb3RlY3RlZDoKLSsgICAgLyohCi0rICAgIFxicmllZgotKyAgICAgICAgRGVz dHJ1Y3RvciBmb3IgT3BlbkdMUmVuZGVyZXIgb2JqZWN0cwotKyAgICAqLwotKyAgICB2aXJ0dWFs IH5PcGVuR0xSZW5kZXJlcigpOwotICAgfTsKLSAKLSB9IC8vIEVuZCBvZiAgQ0VHVUkgbmFtZXNw YWNlIHNlY3Rpb24KLS0tLSBhL2NlZ3VpL3NyYy9YTUxQYXJzZXJNb2R1bGVzL1RpbnlYTUxQYXJz ZXIvQ0VHVUlUaW55WE1MUGFyc2VyLmNwcAotKysrIGIvY2VndWkvc3JjL1hNTFBhcnNlck1vZHVs ZXMvVGlueVhNTFBhcnNlci9DRUdVSVRpbnlYTUxQYXJzZXIuY3BwCi1AQCAtMTQ1LDcgKzE0NSw3 IEBACi0gICAgICAgICAgICAgICAgIHByb2Nlc3NFbGVtZW50KGNoaWxkTm9kZS0+VG9FbGVtZW50 KCkpOwotICAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgICBjYXNlIENFR1VJX1RJ TllYTUxfTkFNRVNQQUNFOjpUaVhtbE5vZGU6OkNFR1VJX1RJTllYTUxfVEVYVDoKLS0gICAgICAg ICAgICAgICAgaWYgKGNoaWxkTm9kZS0+VG9UZXh0KCktPlZhbHVlKCkgIT0gJ1wwJykKLSsgICAg ICAgICAgICAgICAgaWYgKGNoaWxkTm9kZS0+VG9UZXh0KCktPlZhbHVlKCkgIT0gTlVMTCkKLSAg ICAgICAgICAgICAgICAgICAgIGRfaGFuZGxlci0+dGV4dCgodXRmOCopY2hpbGROb2RlLT5Ub1Rl eHQoKS0+VmFsdWUoKSk7Ci0gICAgICAgICAgICAgICAgIGJyZWFrOwotIAotLS0tIGEvY29uZmln dXJlLmFjCi0rKysgYi9jb25maWd1cmUuYWMKLUBAIC0xNCw3ICsxNCw4IEBACi0gCi0gQUNfSU5J VChbQ0VHVUldLCBbQ0VHVUlfUkVMRUFTRV9WRVJTSU9OXSwgW2h0dHA6Ly9tYW50aXMuY2VndWku b3JnLnVrL10sIFtDRUdVSV0pCi0gQUNfQ09ORklHX1NSQ0RJUihbY2VndWkvc3JjL0NFR1VJQmFz ZS5jcHBdKQotLUFNX0lOSVRfQVVUT01BS0UoW2Rpc3QtemlwIHRhci11c3Rhcl0pCi0rQU1fSU5J VF9BVVRPTUFLRShbZGlzdC16aXAgdGFyLXVzdGFyIHN1YmRpci1vYmplY3RzXSkKLStBTV9TSUxF TlRfUlVMRVMoW3llc10pCi0gQUNfQ09ORklHX0hFQURFUihbY2VndWkvaW5jbHVkZS9jb25maWcu aF0pCi0gQUNfQ0FOT05JQ0FMX0hPU1QKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2VndWkwNy90 ZW1wbGF0ZSBiL3NyY3BrZ3MvY2VndWkwNy90ZW1wbGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggM2ZhN2Y4MGEyZWE3Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9jZWd1aTA3 L3RlbXBsYXRlCisrKyAvZGV2L251bGwKQEAgLTEsOTEgKzAsMCBAQAotIyBUZW1wbGF0ZSBmaWxl IGZvciAnY2VndWkwNycKLXBrZ25hbWU9Y2VndWkwNwotdmVyc2lvbj0wLjcuOQotcmV2aXNpb249 OAotd3Jrc3JjPSJDRUdVSS0ke3ZlcnNpb259IgotYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQot Y29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1zYW1wbGVzIgotbWFrZV9idWlsZF9hcmdzPSJhbGwg aHRtbCIKLWhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgZGVqYXZ1LWZvbnRzLXR0ZiBkb3h5Z2Vu IGdsbSBncmFwaHZpeiBsaWJ0b29sCi0gcGtnLWNvbmZpZyBweXRob24iCi1tYWtlZGVwZW5kcz0i Ym9vc3QtZGV2ZWwgZGV2aWwtZGV2ZWwgZnJlZWltYWdlLWRldmVsIGZyZWV0eXBlLWRldmVsCi0g ZnJpYmlkaS1kZXZlbCBnbGZ3LWRldmVsIGxpYnhtbDItZGV2ZWwgbHVhNTEtZGV2ZWwgbWluaXpp cC1kZXZlbCBvaXMtZGV2ZWwKLSBwY3JlLWRldmVsIHNpbGx5LWRldmVsIHRpbnl4bWwtZGV2ZWwg dG9sdWFwcC1kZXZlbAotICQodm9wdF9pZiBpcnJsaWNodCAnaXJybGljaHQtZGV2ZWwnKQotICQo dm9wdF9pZiBweXRob24gJ3B5dGhvbi1kZXZlbCcpIgotZGVwZW5kcz0iY2VndWkwNy1kYXRhIgot c2hvcnRfZGVzYz0iQ3JhenkgRWRkaWUncyBHcmFwaGljYWwgVXNlciBJbnRlcmZhY2UgKDAuNy54 KSIKLW1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCi1saWNlbnNl PSJNSVQiCi1ob21lcGFnZT0iaHR0cDovL2NlZ3VpLm9yZy51ay8iCi1kaXN0ZmlsZXM9IiR7U09V UkNFRk9SR0VfU0lURX0vY3JheXplZHNndWkvQ0VHVUklMjBNay0yLyR7dmVyc2lvbn0vQ0VHVUkt JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03YzNiMjY0ZGVmMDhiNDZkZTc0OWMyYWNhYmEz NjNlOTA3NDc5ZDkyNDYxMjQzNmYzYmQwOWRhMmU0NzRiYjhjCi0KLWJ1aWxkX29wdGlvbnM9Imly cmxpY2h0IHB5dGhvbiIKLWRlc2Nfb3B0aW9uX2lycmxpY2h0PSJFbmFibGUgc3VwcG9ydCBmb3Ig SXJybGljaHQiCi1idWlsZF9vcHRpb25zX2RlZmF1bHQ9ImlycmxpY2h0IgotCi1pZiBbIC16ICIk Q1JPU1NfQlVJTEQiIF07IHRoZW4KLQkjIFhYWDogYm9vc3QtcHl0aG9uIGlzIG5vdCBhdmFpbGFi bGUgd2hlbiBjcm9zcyBidWlsZGluZwotCWJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiBweXRob24i Ci1maQotCi0jIE1ha2UgY29uZmlndXJlIGZpbmQgcHl0aG9uIGFuZCBmcmVldHlwZTIKLUNGTEFH Uz0iLUkke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2luY2x1ZGUvcHl0aG9uMi43IgotCi1wcmVfY29u ZmlndXJlKCkgewotCSMgU2lsZW5jZSBkb3h5Z2VuCi0Jc2VkIC1pIGRvYy9kb3h5Z2VuL01ha2Vm aWxlLmFtIFwKLQkJLWUgJ3M7JChET1hZR0VOKSBkb3h5ZmlsZTsmID4vZGV2L251bGwgMj4mMTsn Ci0KLQkjIE1vZGVybml6ZSBNYWtlZmlsZS5hbSBmaWxlcwotCWZpbmQgLiAtbmFtZSBNYWtlZmls ZS5hbSAtZXhlYyBzZWQgLWkgInt9IiBcCi0JCS1lICIxaSBBQ0xPQ0FMX0FNRkxBR1MgPSAtSSBt NCIgXAotCQktZSAicztJTkNMVURFUztBTV9DWFhGTEFHUztnIiBcOwotCi0JIyBTZXQgQU1fQ1BQ RkxBR1MgZm9yIHRoZSBDIHNvdXJjZSBpbiB0b2x1YSsrCi0Jc2VkIC1pIGNlZ3VpL3NyYy9TY3Jp cHRpbmdNb2R1bGVzL0x1YVNjcmlwdE1vZHVsZS9zdXBwb3J0L3RvbHVhKysvTWFrZWZpbGUuYW0g XAotCQktZSAicztBTV9DWFhGTEFHUztBTV9DRkxBR1M7IgotCi0JIyBNb2Rlcm5pemUgY29uZmln dXJlLmFjIChlbmFibGUgc3ViZGlyLW9iamVjdHMpCi0Jc2VkIC1pIGNvbmZpZ3VyZS5hYyBcCi0J CS1lICJzO2Rpc3QtemlwIHRhci11c3RhcjsmIHN1YmRpci1vYmplY3RzOyIgXAotCQktZSAiL15B TV9JTklUX0FVVE9NQUtFLiovYSBBQ19DT05GSUdfTUFDUk9fRElSUyhbbTRdKSIKLQotCW1rZGly IC1wIG00Ci0JY3AgZG9jL0NPUFlJTkcgZG9jL1JFQURNRSAuCi0JdG91Y2ggTkVXUyBBVVRIT1JT IENoYW5nZUxvZwotCWF1dG9yZWNvbmYgLWlmCi19Ci1wb3N0X2luc3RhbGwoKSB7Ci0JdmxpY2Vu c2UgQ09QWUlORwotCXZkb2MgZG9jL1JFQURNRQotCXZkb2MgZG9jL0dMRVctTElDRU5TRQotCXZk b2MgZG9jL1BDUkUtTElDRU5TRQotCXZkb2MgZG9jL1RpbnlYTUwtTGljZW5zZQotCXZkb2MgZG9j L3N0cmluZ2VuY29kZXJzLWxpY2Vuc2UKLX0KLQotY2VndWkwNy1kYXRhX3BhY2thZ2UoKSB7Ci0J c2hvcnRfZGVzYys9IiAtIGRhdGEgZmlsZXMiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVz ci9zaGFyZS9DRUdVSQotCX0KLX0KLWNlZ3VpMDctZG9jX3BhY2thZ2UoKSB7Ci0Jc2hvcnRfZGVz Yys9IiAtIGRvY3VtZW50YXRpb24iCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZta2RpciB1c3Ivc2hh cmUvZG9jLyR7c291cmNlcGtnfQotCQl2Y29weSAke3dya3NyY30vZG9jL2RveHlnZW4vaHRtbCB1 c3Ivc2hhcmUvZG9jLyR7c291cmNlcGtnfQotCX0KLX0KLWNlZ3VpMDctZGV2ZWxfcGFja2FnZSgp IHsKLQlkZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHty ZXZpc2lvbn0iCi0Jc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgotCXBrZ19pbnN0 YWxsKCkgewotCQl2bW92ZSB1c3IvaW5jbHVkZQotCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZwot CQkjIE1vdmUgb25seSB0aGUgc3ltbGluayAqLnNvIGZpbGVzCi0JCWZpbmQgJHtERVNURElSfS91 c3IvbGliLyAtdHlwZSBsIC1leGVjIG12ICJ7fSIgJHtQS0dERVNURElSfS91c3IvbGliIFw7Ci0J fQotfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jZWd1aTA3L3VwZGF0ZSBiL3NyY3BrZ3MvY2VndWkw Ny91cGRhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAzNDEzMjg3NjZlOS4uMDAw MDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2VndWkwNy91cGRhdGUKKysrIC9kZXYvbnVsbApAQCAt MSArMCwwIEBACi1wYXR0ZXJuPSdDRUdVSSBNay0yL1xLMFwuN1wuW1xkXSsnCmRpZmYgLS1naXQg YS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQtcGFj a2FnZXMvdGVtcGxhdGUKaW5kZXggNDkwY2Y0MGY4Yjk2Li4yNzJkMjQwYTQyOWQgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JlbW92 ZWQtcGFja2FnZXMvdGVtcGxhdGUKQEAgLTM3LDYgKzM3LDEwIEBAIHJlcGxhY2VzPSIKICBjYWxp Zm9ybmlhPD0wLjQuMF80CiAgY2Fwc3RvbmUtcHl0aG9uPD00LjAuMl8zCiAgY2FwdGFpbi1iYWxs YXJkPD0xLjAuMF8yCisgY2VndWkwNzw9MC43LjlfOAorIGNlZ3VpMDctZGF0YTw9MC43LjlfOAor IGNlZ3VpMDctZGV2ZWw8PTAuNy45XzgKKyBjZWd1aTA3LWRvYzw9MC43LjlfOAogIGNnbWluZXI8 PTQuMTEuMV8xCiAgY2xhbXo8PTAuNV80CiAgY291Y2hkYjw9MS43LjFfMgoKRnJvbSA0OGQ0Njc2 YjFmNzNmNGM1MDViMGUwNDFmZGZlOGU4ZDNkOTQwZTlhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBKb2VsIEJlY2ttZXllciA8am9lbEBiZWNrbWV5ZXIudXM+CkRhdGU6IFRodSwgMTEg QXVnIDIwMjIgMTI6MTY6MzUgLTA0MDAKU3ViamVjdDogW1BBVENIIDMvM10gY2VndWk6IGRyb3Ag dW51c2VkIGRlcGVuZGVuY2llcyBpbiBtYWtlZGVwZW5kcy4KClRoZSBvbmx5IHBhY2thZ2UgY3Vy cmVudGx5IGRlcGVuZGluZyBvbiBjZWd1aSAoVFNDKSBkb2Vzbid0IHJlcXVpcmUKdGhlc2UgYW5k IHRoZXkgYXJlIGJvdGggRU9MOgoKLSBEcm9wIHB5dGhvbi1kZXZlbCwgc2luY2UgY29uZmlndXJl IG91dHB1dCBzaG93cyB0aGF0IGl0IHdhc24ndCBldmVuCiAgYnVpbGRpbmcgdGhlIHB5dGhvbiBl eHRlbnNpb24gbW9kdWxlcyBkdWUgdG8gc29tZSBpc3N1ZSB3aXRoCiAgQm9vc3QtcHl0aG9uLgoK LSBEcm9wIGd0azIgKGd0aystZGV2ZWwpIHNpbmNlIGl0IGlzIG9ubHkgdXNlZCBmb3Igc2FtcGxl cywgYW5kIFRTQyBvbmx5CiAgcmVxdWlyZWQgZnJlZXR5cGUyLCB3aGljaCBpcyBub3cgaW5jbHVk ZWQgc2VwYXJhdGVseSBpbnN0ZWFkIG9mIHB1bGxlZAogIGluIGluIGRlcGVuZGVuY3kgdHJlZSBv ZiBndGsrLWRldmVsLgotLS0KIHNyY3BrZ3MvY2VndWkvdGVtcGxhdGUgfCAxNiArKysrKysrLS0t LS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2VndWkvdGVtcGxhdGUgYi9zcmNwa2dzL2NlZ3VpL3RlbXBs YXRlCmluZGV4IDA3MGZhNjZhZmY4MS4uNWEzYmVlYTFkNTE0IDEwMDY0NAotLS0gYS9zcmNwa2dz L2NlZ3VpL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2VndWkvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjZWd1aScKIHBrZ25hbWU9Y2VndWkKIHZlcnNpb249 MC44LjcuMjAxOTAyMjUKLXJldmlzaW9uPTUKK3JldmlzaW9uPTYKIF9naXRoYXNoPWJmYzZhODQx ZGU0NWI4ZTYzMDQwZDMzYjljY2NjNjc3NDUzMzdmNGUKIHdya3NyYz0iJHtwa2duYW1lfS0ke19n aXRoYXNofSIKIGJ1aWxkX3N0eWxlPWNtYWtlCkBAIC0xMCwxMiArMTAsMTEgQEAgY29uZmlndXJl X2FyZ3M9Ii1ET3BlbkdMX0dMX1BSRUZFUkVOQ0U9R0xWTkQgXAogIC1EQ0VHVUlfU0FNUExFU19F TkFCTEVEPU9GRiIKIG1ha2VfYnVpbGRfYXJncz0iYWxsIGh0bWwiCiBob3N0bWFrZWRlcGVuZHM9 ImdyYXBodml6IGRveHlnZW4gZGVqYXZ1LWZvbnRzLXR0ZiBnZCBnbG0gcGVybCBwa2ctY29uZmln IgotbWFrZWRlcGVuZHM9ImxpYmdsdm5kLWRldmVsIFNETDItZGV2ZWwgU0RMMl9pbWFnZS1kZXZl bCBsaWJ4bWwyLWRldmVsIGJvb3N0LWRldmVsCi0gZGV2aWwtZGV2ZWwgZ2xmdy1kZXZlbCBnbG0g b2lzLWRldmVsIHNpbGx5LWRldmVsIGZyaWJpZGktZGV2ZWwgbHVhNTMtZGV2ZWwgbWluaXppcC1k ZXZlbAorbWFrZWRlcGVuZHM9ImxpYmdsdm5kLWRldmVsIFNETDItZGV2ZWwgU0RMMl9pbWFnZS1k ZXZlbCBsaWJ4bWwyLWRldmVsCisgYm9vc3QtZGV2ZWwgZGV2aWwtZGV2ZWwgZ2xmdy1kZXZlbCBn bG0gb2lzLWRldmVsIHNpbGx5LWRldmVsIGZyaWJpZGktZGV2ZWwKKyBsdWE1My1kZXZlbCBtaW5p emlwLWRldmVsIGZyZWV0eXBlLWRldmVsCiAgJCh2b3B0X2lmIGlycmxpY2h0IGlycmxpY2h0LWRl dmVsKQotICQodm9wdF9pZiBvZ3JlIGxpYm9ncmUtZGV2ZWwpCi0gJCh2b3B0X2lmIHB5dGhvbiBw eXRob24tZGV2ZWwpCi0gJCh2b3B0X2lmIGd0ayBndGsrLWRldmVsKSIKKyAkKHZvcHRfaWYgb2dy ZSBsaWJvZ3JlLWRldmVsKSIKIHNob3J0X2Rlc2M9IkNyYXp5IEVkZGllJ3MgR3JhcGhpY2FsIFVz ZXIgSW50ZXJmYWNlIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3Jn PiIKIGxpY2Vuc2U9Ik1JVCIKQEAgLTI0LDEwICsyMyw5IEBAIGRpc3RmaWxlcz0iaHR0cHM6Ly9n aXRodWIuY29tL2NlZ3VpL2NlZ3VpL2FyY2hpdmUvJHtfZ2l0aGFzaH0udGFyLmd6IgogY2hlY2tz dW09NzAxNTYyNTczMTNiODFkMDY4ZDY1OTI4ODcxNTdkZDE2YjkxZDdiYzBkZmRjYmEwMmE5NmVk MzcxZDMyOWU2NAogcmVwbGFjZXM9ImNlZ3VpLWRhdGE+PTAgY2VndWktc2FtcGxlPj0wIgogCi1i dWlsZF9vcHRpb25zPSJndGsgaXJybGljaHQgb2dyZSBweXRob24iCitidWlsZF9vcHRpb25zPSJp cnJsaWNodCBvZ3JlIgogZGVzY19vcHRpb25faXJybGljaHQ9IkVuYWJsZSBzdXBwb3J0IGZvciBJ cnJsaWNodCIKIGRlc2Nfb3B0aW9uX29ncmU9IkVuYWJsZSBzdXBwb3J0IGZvciBPZ3JlIgotYnVp bGRfb3B0aW9uc19kZWZhdWx0PSJndGsgcHl0aG9uIgogCiBpZiBbIC16ICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KIAkjIGlycmxpY2h0IGludGVyZmFjZSBmYWlscyB0byBjcm9zcyBjb21waWxlCkBA IC00Miw3ICs0MCw3IEBAIHByZV9jb25maWd1cmUoKSB7CiAJY3AgLXAgJHtGSUxFU0RJUn0vRmlu ZE9wZW5HTEVTLmNtYWtlIGNtYWtlCiAKIAkjIGNtYWtlIHNldHMgc3RhbmRhcmQgdG8gYysrMDMg KHdoaWNoIGRvZXNu4oCZdCBrbm93IGludDE2X3QpCi0Jc2VkIC1pIC1lICJzLy1zdGQ9YysrMDMv LyIgQ01ha2VMaXN0cy50eHQKKwl2c2VkIC1pIC1lICJzLy1zdGQ9YysrMDMvLyIgQ01ha2VMaXN0 cy50eHQKIH0KIHBvc3RfaW5zdGFsbCgpIHsKIAlsb2NhbCBfdmVyMj0ke3ZlcnNpb24lLiouKn0K --===============8684370624332786703==--