From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56125) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1d6CHC-0001dx-4S for qemu-devel@nongnu.org; Thu, 04 May 2017 04:38:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1d6CH8-0003yd-Uo for qemu-devel@nongnu.org; Thu, 04 May 2017 04:38:18 -0400 Resent-Message-Id: Received: from sender-of-o52.zoho.com ([135.84.80.217]:21471) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1d6CH8-0003xq-IT for qemu-devel@nongnu.org; Thu, 04 May 2017 04:38:14 -0400 In-Reply-To: <20170504071811.3547-1-kraxel@redhat.com> Message-ID: <149388707905.177.7738031984667033328@c05f1edc8ed1> Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 From: no-reply@patchew.org Date: Thu, 4 May 2017 01:37:59 -0700 (PDT) Subject: Re: [Qemu-devel] [PULL 00/30] audio patch queue List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: kraxel@redhat.com Cc: famz@redhat.com, qemu-devel@nongnu.org SGksCgpUaGlzIHNlcmllcyBzZWVtcyB0byBoYXZlIHNvbWUgY29kaW5nIHN0eWxlIHByb2JsZW1z LiBTZWUgb3V0cHV0IGJlbG93IGZvcgptb3JlIGluZm9ybWF0aW9uOgoKU3ViamVjdDogW1FlbXUt ZGV2ZWxdIFtQVUxMIDAwLzMwXSBhdWRpbyBwYXRjaCBxdWV1ZQpNZXNzYWdlLWlkOiAyMDE3MDUw NDA3MTgxMS4zNTQ3LTEta3JheGVsQHJlZGhhdC5jb20KVHlwZTogc2VyaWVzCgo9PT0gVEVTVCBT Q1JJUFQgQkVHSU4gPT09CiMhL2Jpbi9iYXNoCgpCQVNFPWJhc2UKbj0xCnRvdGFsPSQoZ2l0IGxv ZyAtLW9uZWxpbmUgJEJBU0UuLiB8IHdjIC1sKQpmYWlsZWQ9MAoKZ2l0IGNvbmZpZyAtLWxvY2Fs IGRpZmYucmVuYW1lbGltaXQgMApnaXQgY29uZmlnIC0tbG9jYWwgZGlmZi5yZW5hbWVzIFRydWUK CmNvbW1pdHM9IiQoZ2l0IGxvZyAtLWZvcm1hdD0lSCAtLXJldmVyc2UgJEJBU0UuLikiCmZvciBj IGluICRjb21taXRzOyBkbwogICAgZWNobyAiQ2hlY2tpbmcgUEFUQ0ggJG4vJHRvdGFsOiAkKGdp dCBsb2cgLW4gMSAtLWZvcm1hdD0lcyAkYykuLi4iCiAgICBpZiAhIGdpdCBzaG93ICRjIC0tZm9y bWF0PWVtYWlsIHwgLi9zY3JpcHRzL2NoZWNrcGF0Y2gucGwgLS1tYWlsYmFjayAtOyB0aGVuCiAg ICAgICAgZmFpbGVkPTEKICAgICAgICBlY2hvCiAgICBmaQogICAgbj0kKChuKzEpKQpkb25lCgpl eGl0ICRmYWlsZWQKPT09IFRFU1QgU0NSSVBUIEVORCA9PT0KClVwZGF0aW5nIDNjOGNmNWE5YzIx ZmY4NzgyMTY0ZDFkZWY3ZjQ0YmQ4ODg3MTMzODQKU3dpdGNoZWQgdG8gYSBuZXcgYnJhbmNoICd0 ZXN0JwpiYTE3YzRmIGF1ZGlvOiBVc2UgQVJSQVlfU0laRSBmcm9tIHFlbXUvb3NkZXAuaAowZDk5 NDI2IGF1ZGlvOiB1bi1leHBvcnQgT1BMUmVzZXRDaGlwCjcyMjExYjUgYXVkaW86IFJlbW92ZSB1 bnVzZWQgdHlwZWRlZnMKMDk3Njg2MCBhdWRpbzogVXBkYXRlSGFuZGxlciBpcyBub3QgdXNlZCBh bnltb3JlCjJmNTNjYWQgYXVkaW86IElSUUhhbmRsZXIgaXMgbm90IHVzZWQgYW55bW9yZQo4NjQz ZDYyIGF1ZGlvOiBPUExTZXRVcGRhdGVIYW5kbGVyIGlzIG5vdCB1c2VkIGFueXdoZXJlCjI2ZDFl MjQgYXVkaW86IE9QTFNldElSUUhhbmRsZXIgaXMgbm90IHVzZWQgYW55d2hlcmUKZTBlZjA0ZCBh dWRpbzogR1VTc2FtcGxlIGlzIGludDE2X3QKOWRkODAyZiBhdWRpbzogR1VTd29yZCBpcyB1aW50 MTZfdAo3MWI0ZmQ3IGF1ZGlvOiBHVVN3b3JkIGlzIHVpbnQxNl90CjI4YjE0YzEgYXVkaW86IHJl bW92ZSBHVVNjaGFyCjlkMjY5YTUgYXVkaW86IEdVU2J5dGUgaXMgdWludDhfdAo3MmVkMjMxIGF1 ZGlvOiBSZW1vdmUgdW51c2VkIGZpZWxkcwpiM2Y0YmM3IGF1ZGlvOiBSZW1vdmUgdHlwZSBmaWVs ZAplNDU1NjdhIGF1ZGlvOiBSZW1vdmUgVW51c2VkIE9QTF9UWVBFXyoKY2U5NTUzZiBhdWRpbzog VW5mb2xkIE9QTFNBTVBMRQo2NGM0M2Q4IGF1ZGlvOiBSZW1vdmUgSU5UMzIKNjhlMDU4MSBhdWRp bzogcmVtb3ZlIElOVDE2CjQ3MzEzNTYgYXVkaW86IFJlbW92ZSBJTlQ4CjViZjJlNDYgYXVkaW86 IHJlbW92ZSBVSU5UMzIKZDY1YTQ4NCBhdWRpbzogcmVtb3ZlIFVJTlQxNgo5ZDkxMDQ0IGF1ZGlv OiBSZW1vdmUgVUlOVDgKZjExMzI1MiBhdWRpbzogWU0zODEyIHdhcyBhbHdheXMgZGVmaW5lZAox ZmU0Y2ZiIGF1ZGlvOiBSZW1vdmUgWU0zNTI2IHN1cHBvcnQKN2Q3YjIzNCBhdWRpbzogcmVtb3Zl IFk4OTUwIGNvbmZpZ3VyYXRpb24KMTJlYWI5ZCBhZGxpYjogUmVtb3ZlIHN1cHBvcnQgZm9yIFlN RjI2Mgo0MjBmODY0IGF1ZGlvOiBmaXggV0FWU3RhdGUgbGVhawo4ODE4MGM2IGF1ZGlvOiByZWxl YXNlIGNhcHR1cmUgYnVmZmVycwpmMTMwZDA4IGh3L2F1ZGlvOiBjb252ZXJ0IGV4aXQgY2FsbGJh Y2sgaW4gSERBQ29kZWNEZXZpY2VDbGFzcyB0byB2b2lkCjdmM2YwZDIgaHcvYXVkaW86IHJlcGxh Y2UgZXhpdCB3aXRoIHVucmVhbGl6ZSBpbiBoZGFfY29kZWNfZGV2aWNlX2NsYXNzX2luaXQKCj09 PSBPVVRQVVQgQkVHSU4gPT09CkNoZWNraW5nIFBBVENIIDEvMzA6IGh3L2F1ZGlvOiByZXBsYWNl IGV4aXQgd2l0aCB1bnJlYWxpemUgaW4gaGRhX2NvZGVjX2RldmljZV9jbGFzc19pbml0Li4uCkNo ZWNraW5nIFBBVENIIDIvMzA6IGh3L2F1ZGlvOiBjb252ZXJ0IGV4aXQgY2FsbGJhY2sgaW4gSERB Q29kZWNEZXZpY2VDbGFzcyB0byB2b2lkLi4uCkNoZWNraW5nIFBBVENIIDMvMzA6IGF1ZGlvOiBy ZWxlYXNlIGNhcHR1cmUgYnVmZmVycy4uLgpFUlJPUjogc3BhY2UgcHJvaGliaXRlZCBiZXR3ZWVu IGZ1bmN0aW9uIG5hbWUgYW5kIG9wZW4gcGFyZW50aGVzaXMgJygnCiMyOTogRklMRTogYXVkaW8v YXVkaW8uYzoyMDMxOgorICAgICAgICAgICAgICAgIGdfZnJlZSAoY2FwLT5ody5taXhfYnVmKTsK CkVSUk9SOiBzcGFjZSBwcm9oaWJpdGVkIGJldHdlZW4gZnVuY3Rpb24gbmFtZSBhbmQgb3BlbiBw YXJlbnRoZXNpcyAnKCcKIzMwOiBGSUxFOiBhdWRpby9hdWRpby5jOjIwMzI6CisgICAgICAgICAg ICAgICAgZ19mcmVlIChjYXAtPmJ1Zik7Cgp0b3RhbDogMiBlcnJvcnMsIDAgd2FybmluZ3MsIDgg bGluZXMgY2hlY2tlZAoKWW91ciBwYXRjaCBoYXMgc3R5bGUgcHJvYmxlbXMsIHBsZWFzZSByZXZp ZXcuICBJZiBhbnkgb2YgdGhlc2UgZXJyb3JzCmFyZSBmYWxzZSBwb3NpdGl2ZXMgcmVwb3J0IHRo ZW0gdG8gdGhlIG1haW50YWluZXIsIHNlZQpDSEVDS1BBVENIIGluIE1BSU5UQUlORVJTLgoKQ2hl Y2tpbmcgUEFUQ0ggNC8zMDogYXVkaW86IGZpeCBXQVZTdGF0ZSBsZWFrLi4uCkVSUk9SOiBzcGFj ZSBwcm9oaWJpdGVkIGJldHdlZW4gZnVuY3Rpb24gbmFtZSBhbmQgb3BlbiBwYXJlbnRoZXNpcyAn KCcKIzI1OiBGSUxFOiBhdWRpby93YXZjYXB0dXJlLmM6OTE6CisgICAgZ19mcmVlICh3YXYpOwoK dG90YWw6IDEgZXJyb3JzLCAwIHdhcm5pbmdzLCA3IGxpbmVzIGNoZWNrZWQKCllvdXIgcGF0Y2gg aGFzIHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3LiAgSWYgYW55IG9mIHRoZXNlIGVycm9y cwphcmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9ydCB0aGVtIHRvIHRoZSBtYWludGFpbmVyLCBzZWUK Q0hFQ0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4KCkNoZWNraW5nIFBBVENIIDUvMzA6IGFkbGliOiBS ZW1vdmUgc3VwcG9ydCBmb3IgWU1GMjYyLi4uCkNoZWNraW5nIFBBVENIIDYvMzA6IGF1ZGlvOiBy ZW1vdmUgWTg5NTAgY29uZmlndXJhdGlvbi4uLgpDaGVja2luZyBQQVRDSCA3LzMwOiBhdWRpbzog UmVtb3ZlIFlNMzUyNiBzdXBwb3J0Li4uCkNoZWNraW5nIFBBVENIIDgvMzA6IGF1ZGlvOiBZTTM4 MTIgd2FzIGFsd2F5cyBkZWZpbmVkLi4uCkNoZWNraW5nIFBBVENIIDkvMzA6IGF1ZGlvOiBSZW1v dmUgVUlOVDguLi4KRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMjM6 IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NzkyOgorXkleSV5JXkl1aW50OF90IHN0MSA9IHYmMTsk CgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0ICcmJyAoY3R4OlZ4VikKIzIzOiBG SUxFOiBody9hdWRpby9mbW9wbC5jOjc5MjoKKwkJCQl1aW50OF90IHN0MSA9IHYmMTsKIAkJCQkg ICAgICAgICAgICAgICBeCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJz CiMyNDogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo3OTM6CiteSV5JXkleSXVpbnQ4X3Qgc3QyID0g KHY+PjEpJjE7JAoKRVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnPj4nIChjdHg6 VnhWKQojMjQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NzkzOgorCQkJCXVpbnQ4X3Qgc3QyID0g KHY+PjEpJjE7CiAJCQkJICAgICAgICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQg YXJvdW5kIHRoYXQgJyYnIChjdHg6VnhWKQojMjQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6Nzkz OgorCQkJCXVpbnQ4X3Qgc3QyID0gKHY+PjEpJjE7CiAJCQkJICAgICAgICAgICAgICAgICAgICBe CgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMzMzogRklMRTogaHcv YXVkaW8vZm1vcGwuYzo4NDE6CiteSV5JXkl1aW50OF90IHJrZXkgPSBPUEwtPnJoeXRobV52OyQK CkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQgJ14nIChjdHg6VnhWKQojMzM6IEZJ TEU6IGh3L2F1ZGlvL2Ztb3BsLmM6ODQxOgorCQkJdWludDhfdCBya2V5ID0gT1BMLT5yaHl0aG1e djsKIAkJCSAgICAgICAgICAgICAgICAgICAgICAgICAgXgoKRVJST1I6IGNvZGUgaW5kZW50IHNo b3VsZCBuZXZlciB1c2UgdGFicwojNDI6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6OTk0OgorXkl1 aW50OF90IHJoeXRobSA9IE9QTC0+cmh5dGhtJjB4MjA7JAoKRVJST1I6IHNwYWNlcyByZXF1aXJl ZCBhcm91bmQgdGhhdCAnJicgKGN0eDpWeFYpCiM0MjogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo5 OTQ6CisJdWludDhfdCByaHl0aG0gPSBPUEwtPnJoeXRobSYweDIwOwogCSAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJz CiM3MjogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo0NToKK15JdWludDhfdCAgS1NSO15JXkkvKiBr ZXkgc2NhbGUgcmF0ZSAgOihzaGlmdCBkb3duIGJpdCkgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVu dCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzc5OiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjUwOgor Xkl1aW50OF90IGtzbDteSV5JLyoga2V5c2NhbGUgbGV2ZWwgIDooc2hpZnQgZG93biBiaXRzKSAg Ki8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM4MDogRklMRTog aHcvYXVkaW8vZm1vcGwuaDo1MToKK15JdWludDhfdCBrc3I7XkleSS8qIGtleSBzY2FsZSByYXRl ICA6a2NvZGU+PktTUiAgICAgICAgICovJAoKRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZl ciB1c2UgdGFicwojODc6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6NTY6CiteSXVpbnQ4X3QgZWdf dHlwO15JLyogZW52ZWxvcGUgdHlwZSBmbGFnICAgICAgICAgICAgICAgICAgKi8kCgpFUlJPUjog Y29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM4ODogRklMRTogaHcvYXVkaW8vZm1v cGwuaDo1NzoKK15JdWludDhfdCBldm07XkleSS8qIGVudmVsb3BlIHBoYXNlICAgICAgICAgICAg ICAgICAgICAgICovJAoKRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwoj OTg6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6NjU6CiteSXVpbnQ4X3QgYW1zO15JXkkvKiBhbXMg ZmxhZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBz aG91bGQgbmV2ZXIgdXNlIHRhYnMKIzk5OiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjY2OgorXkl1 aW50OF90IHZpYjteSV5JLyogdmlicmF0ZSBmbGFnICAgICAgICAgICAgICAgICAgICAgICAgKi8k CgpXQVJOSU5HOiBsaW5lIG92ZXIgODAgY2hhcmFjdGVycwojMTA5OiBGSUxFOiBody9hdWRpby9m bW9wbC5oOjc0OgorCXVpbnQ4X3QgQ09OOwkJCS8qIGNvbm5lY3Rpb24gdHlwZSAgICAgICAgICAg ICAgICAgICAgICovCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMx MDk6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6NzQ6CiteSXVpbnQ4X3QgQ09OO15JXkleSS8qIGNv bm5lY3Rpb24gdHlwZSAgICAgICAgICAgICAgICAgICAgICovJAoKV0FSTklORzogbGluZSBvdmVy IDgwIGNoYXJhY3RlcnMKIzExMDogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo3NToKKwl1aW50OF90 IEZCOwkJCS8qIGZlZWQgYmFjayAgICAgICA6KHNoaWZ0IGRvd24gYml0KSAgICovCgpFUlJPUjog Y29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxMTA6IEZJTEU6IGh3L2F1ZGlvL2Zt b3BsLmg6NzU6CiteSXVpbnQ4X3QgRkI7XkleSV5JLyogZmVlZCBiYWNrICAgICAgIDooc2hpZnQg ZG93biBiaXQpICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJz CiMxMTc6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6ODE6CiteSXVpbnQ4X3Qga2NvZGU7XkleSS8q IGtleSBjb2RlICAgICAgICA6IEtleVNjYWxlQ29kZSAgICAgICovJAoKRVJST1I6IGNvZGUgaW5k ZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTIxOiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjg0 OgorXkl1aW50OF90IGtleW9uO15JXkkvKiBrZXkgb24vb2ZmIGZsYWcgICAgICAgICAgICAgICAg ICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzEyNzog RklMRTogaHcvYXVkaW8vZm1vcGwuaDo4OToKK15JdWludDhfdCB0eXBlO15JXkleSS8qIGNoaXAg dHlwZSAgICAgICAgICAgICAgICAgICAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91 bGQgbmV2ZXIgdXNlIHRhYnMKIzEzNTogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo5NDoKK15JdWlu dDhfdCBhZGRyZXNzO15JXkkvKiBhZGRyZXNzIHJlZ2lzdGVyICAgICAgICAgICAgICAgICAgKi8k CgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxMzY6IEZJTEU6IGh3 L2F1ZGlvL2Ztb3BsLmg6OTU6CiteSXVpbnQ4X3Qgc3RhdHVzO15JXkkvKiBzdGF0dXMgZmxhZyAg ICAgICAgICAgICAgICAgICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVy IHVzZSB0YWJzCiMxMzc6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6OTY6CiteSXVpbnQ4X3Qgc3Rh dHVzbWFzazteSS8qIHN0YXR1cyBtYXNrICAgICAgICAgICAgICAgICAgICAgICAqLyQKCkVSUk9S OiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzE0MjogRklMRTogaHcvYXVkaW8v Zm1vcGwuaDoxMDA6CiteSXVpbnQ4X3Qgc3RbMl07XkleSS8qIHRpbWVyIGVuYWJsZSAgICAgICAg ICAgICAgICAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRh YnMKIzE0ODogRklMRTogaHcvYXVkaW8vZm1vcGwuaDoxMDU6CiteSXVpbnQ4X3Qgcmh5dGhtO15J XkkvKiBSaHl0aG0gbW9kZSAsIGtleSBmbGFnICovJAoKRVJST1I6IGNvZGUgaW5kZW50IHNob3Vs ZCBuZXZlciB1c2UgdGFicwojMTU3OiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjEyNDoKK15JdWlu dDhfdCB3YXZlc2VsOyQKCnRvdGFsOiAyNyBlcnJvcnMsIDIgd2FybmluZ3MsIDEzMSBsaW5lcyBj aGVja2VkCgpZb3VyIHBhdGNoIGhhcyBzdHlsZSBwcm9ibGVtcywgcGxlYXNlIHJldmlldy4gIElm IGFueSBvZiB0aGVzZSBlcnJvcnMKYXJlIGZhbHNlIHBvc2l0aXZlcyByZXBvcnQgdGhlbSB0byB0 aGUgbWFpbnRhaW5lciwgc2VlCkNIRUNLUEFUQ0ggaW4gTUFJTlRBSU5FUlMuCgpDaGVja2luZyBQ QVRDSCAxMC8zMDogYXVkaW86IHJlbW92ZSBVSU5UMTYuLi4KQ2hlY2tpbmcgUEFUQ0ggMTEvMzA6 IGF1ZGlvOiByZW1vdmUgVUlOVDMyLi4uCkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRo YXQgJyonIChjdHg6VnhWKQojMjA6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6MTI1Ogorc3RhdGlj IGNvbnN0IHVpbnQzMl90IEtTTF9UQUJMRVs4KjE2XT0KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQgJz0nIChjdHg6 VnhFKQojMjA6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6MTI1Ogorc3RhdGljIGNvbnN0IHVpbnQz Ml90IEtTTF9UQUJMRVs4KjE2XT0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0ICc9JyAoY3R4OlZ4VykKIzI5 OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjE5ODoKK3N0YXRpYyBjb25zdCB1aW50MzJfdCBNVUxf VEFCTEVbMTZdPSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCkVSUk9S OiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQgJyonIChjdHg6V3hWKQojMzg6IEZJTEU6IGh3 L2F1ZGlvL2Ztb3BsLmM6MzIyOgorc3RhdGljIGlubGluZSB1aW50MzJfdCBPUExfQ0FMQ19TTE9U KCBPUExfU0xPVCAqU0xPVCApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZSBwcm9oaWJpdGVkIGFmdGVyIHRoYXQgb3BlbiBwYXJl bnRoZXNpcyAnKCcKIzM4OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjMyMjoKK3N0YXRpYyBpbmxp bmUgdWludDMyX3QgT1BMX0NBTENfU0xPVCggT1BMX1NMT1QgKlNMT1QgKQoKRVJST1I6IHNwYWNl IHByb2hpYml0ZWQgYmVmb3JlIHRoYXQgY2xvc2UgcGFyZW50aGVzaXMgJyknCiMzODogRklMRTog aHcvYXVkaW8vZm1vcGwuYzozMjI6CitzdGF0aWMgaW5saW5lIHVpbnQzMl90IE9QTF9DQUxDX1NM T1QoIE9QTF9TTE9UICpTTE9UICkKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNl IHRhYnMKIzQ3OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjQ1NDoKK15JdWludDMyX3QgZW52X291 dDskCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM1NjogRklMRTog aHcvYXVkaW8vZm1vcGwuYzo0OTk6CiteSXVpbnQzMl90IGVudl90YW0sZW52X3NkLGVudl90b3As ZW52X2hoOyQKCkVSUk9SOiBzcGFjZSByZXF1aXJlZCBhZnRlciB0aGF0ICcsJyAoY3R4OlZ4VikK IzU2OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjQ5OToKKwl1aW50MzJfdCBlbnZfdGFtLGVudl9z ZCxlbnZfdG9wLGVudl9oaDsKIAkgICAgICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlIHJlcXVp cmVkIGFmdGVyIHRoYXQgJywnIChjdHg6VnhWKQojNTY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6 NDk5OgorCXVpbnQzMl90IGVudl90YW0sZW52X3NkLGVudl90b3AsZW52X2hoOwogCSAgICAgICAg ICAgICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlIHJlcXVpcmVkIGFmdGVyIHRoYXQgJywnIChj dHg6VnhWKQojNTY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NDk5OgorCXVpbnQzMl90IGVudl90 YW0sZW52X3NkLGVudl90b3AsZW52X2hoOwogCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBeCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM2NjogRklMRTog aHcvYXVkaW8vZm1vcGwuYzo5OTI6CiteSXVpbnQzMl90IGFtc0NudCAgPSBPUEwtPmFtc0NudDsk CgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM2NzogRklMRTogaHcv YXVkaW8vZm1vcGwuYzo5OTM6CiteSXVpbnQzMl90ICB2aWJDbnQgID0gT1BMLT52aWJDbnQ7JAoK RVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojOTA6IEZJTEU6IGh3L2F1 ZGlvL2Ztb3BsLmg6NTA6CiteSXVpbnQzMl90IG11bDteSV5JLyogbXVsdGlwbGUgICAgICAgIDpN TF9UQUJMRVtNTF0gICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVz ZSB0YWJzCiM5MTogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo1MToKK15JdWludDMyX3QgQ250O15J XkkvKiBmcmVxdWVuY3kgY291bnQgOiAgICAgICAgICAgICAgICAgICAqLyQKCkVSUk9SOiBjb2Rl IGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzkyOiBGSUxFOiBody9hdWRpby9mbW9wbC5o OjUyOgorXkl1aW50MzJfdCBJbmNyO15JLyogZnJlcXVlbmN5IHN0ZXAgIDogICAgICAgICAgICAg ICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxMDE6 IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6Nzg6CiteSXVpbnQzMl90ICBibG9ja19mbnVtO15JLyog YmxvY2srZm51bSAgICAgIDogICAgICAgICAgICAgICAgICAgKi8kCgpXQVJOSU5HOiBsaW5lIG92 ZXIgODAgY2hhcmFjdGVycwojMTA1OiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjgwOgorCXVpbnQz Ml90ICBmYzsJCQkvKiBGcmVxLiBJbmNyZW1lbnQgYmFzZSAgICAgICAgICAgICAgICAqLwoKRVJS T1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTA1OiBGSUxFOiBody9hdWRp by9mbW9wbC5oOjgwOgorXkl1aW50MzJfdCAgZmM7XkleSV5JLyogRnJlcS4gSW5jcmVtZW50IGJh c2UgICAgICAgICAgICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVz ZSB0YWJzCiMxMDY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6ODE6CiteSXVpbnQzMl90ICBrc2xf YmFzZTteSS8qIEtleVNjYWxlTGV2ZWwgQmFzZSBzdGVwICAgICAgICAgICAgICovJAoKRVJST1I6 IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTE1OiBGSUxFOiBody9hdWRpby9m bW9wbC5oOjk1OgorXkl1aW50MzJfdCBtb2RlO15JXkkvKiBSZWcuMDggOiBDU00gLCBub3Rlc2Vs LGV0Yy4gICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJz CiMxMjQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6MTEzOgorXkl1aW50MzJfdCBGTl9UQUJMRVsx MDI0XTsgIC8qIGZudW1iZXIgLT4gaW5jcmVtZW50IGNvdW50ZXIgKi8kCgp0b3RhbDogMjEgZXJy b3JzLCAxIHdhcm5pbmdzLCA5OCBsaW5lcyBjaGVja2VkCgpZb3VyIHBhdGNoIGhhcyBzdHlsZSBw cm9ibGVtcywgcGxlYXNlIHJldmlldy4gIElmIGFueSBvZiB0aGVzZSBlcnJvcnMKYXJlIGZhbHNl IHBvc2l0aXZlcyByZXBvcnQgdGhlbSB0byB0aGUgbWFpbnRhaW5lciwgc2VlCkNIRUNLUEFUQ0gg aW4gTUFJTlRBSU5FUlMuCgpDaGVja2luZyBQQVRDSCAxMi8zMDogYXVkaW86IFJlbW92ZSBJTlQ4 Li4uCkNoZWNraW5nIFBBVENIIDEzLzMwOiBhdWRpbzogcmVtb3ZlIElOVDE2Li4uCkNoZWNraW5n IFBBVENIIDE0LzMwOiBhdWRpbzogUmVtb3ZlIElOVDMyLi4uCkVSUk9SOiBzcGFjZXMgcmVxdWly ZWQgYXJvdW5kIHRoYXQgJz0nIChjdHg6VnhWKQojMjA6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6 MTczOgorc3RhdGljIGNvbnN0IGludDMyX3QgU0xfVEFCTEVbMTZdPXsKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQg JyonIChjdHg6VnhWKQojNDQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6MTk0Ogorc3RhdGljIGlu dDMyX3QgRU5WX0NVUlZFWzIqRUdfRU5UKzFdOwogICAgICAgICAgICAgICAgICAgICAgICAgICBe CgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0ICcrJyAoY3R4OlZ4VikKIzQ0OiBG SUxFOiBody9hdWRpby9mbW9wbC5jOjE5NDoKK3N0YXRpYyBpbnQzMl90IEVOVl9DVVJWRVsyKkVH X0VOVCsxXTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCkVSUk9SOiBzcGFj ZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQgJz0nIChjdHg6VnhFKQojNTM6IEZJTEU6IGh3L2F1ZGlv L2Ztb3BsLmM6MjA2Ogorc3RhdGljIGludDMyX3QgUkFURV8wWzE2XT0KICAgICAgICAgICAgICAg ICAgICAgICAgICBeCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM3 NjogRklMRTogaHcvYXVkaW8vZm1vcGwuYzoyMjk6CitzdGF0aWMgaW50MzJfdCBmZWVkYmFjazI7 XkleSS8qIGNvbm5lY3QgZm9yIFNMT1QgMiAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQg bmV2ZXIgdXNlIHRhYnMKIzg1OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjM2MjoKK15JaW50MzJf dCAqY2FycmllciA9ICZvdXRkWzBdOyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIg dXNlIHRhYnMKIzk0OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjUwMToKK15JaW50MzJfdCB0b25l ODskCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxMDM6IEZJTEU6 IGh3L2F1ZGlvL2Ztb3BsLmM6NjE5OgorXklpZiggKFRMX1RBQkxFID0gbWFsbG9jKFRMX01BWCoy KnNpemVvZihpbnQzMl90KSkpID09IE5VTEwpJAoKRVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91 bmQgdGhhdCAnKicgKGN0eDpWeFYpCiMxMDM6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjE5Ogor CWlmKCAoVExfVEFCTEUgPSBtYWxsb2MoVExfTUFYKjIqc2l6ZW9mKGludDMyX3QpKSkgPT0gTlVM TCkKIAkgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZXMgcmVxdWly ZWQgYXJvdW5kIHRoYXQgJyonIChjdHg6VnhWKQojMTAzOiBGSUxFOiBody9hdWRpby9mbW9wbC5j OjYxOToKKwlpZiggKFRMX1RBQkxFID0gbWFsbG9jKFRMX01BWCoyKnNpemVvZihpbnQzMl90KSkp ID09IE5VTEwpCiAJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF4KCkVSUk9SOiBzcGFj ZSBwcm9oaWJpdGVkIGFmdGVyIHRoYXQgb3BlbiBwYXJlbnRoZXNpcyAnKCcKIzEwMzogRklMRTog aHcvYXVkaW8vZm1vcGwuYzo2MTk6CisJaWYoIChUTF9UQUJMRSA9IG1hbGxvYyhUTF9NQVgqMipz aXplb2YoaW50MzJfdCkpKSA9PSBOVUxMKQoKRVJST1I6IHNwYWNlIHJlcXVpcmVkIGJlZm9yZSB0 aGUgb3BlbiBwYXJlbnRoZXNpcyAnKCcKIzEwMzogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo2MTk6 CisJaWYoIChUTF9UQUJMRSA9IG1hbGxvYyhUTF9NQVgqMipzaXplb2YoaW50MzJfdCkpKSA9PSBO VUxMKQoKRVJST1I6IGRvIG5vdCB1c2UgYXNzaWdubWVudCBpbiBpZiBjb25kaXRpb24KIzEwMzog RklMRTogaHcvYXVkaW8vZm1vcGwuYzo2MTk6CisJaWYoIChUTF9UQUJMRSA9IG1hbGxvYyhUTF9N QVgqMipzaXplb2YoaW50MzJfdCkpKSA9PSBOVUxMKQoKRVJST1I6IGJyYWNlcyB7fSBhcmUgbmVj ZXNzYXJ5IGZvciBhbGwgYXJtcyBvZiB0aGlzIHN0YXRlbWVudAojMTAzOiBGSUxFOiBody9hdWRp by9mbW9wbC5jOjYxOToKKwlpZiggKFRMX1RBQkxFID0gbWFsbG9jKFRMX01BWCoyKnNpemVvZihp bnQzMl90KSkpID09IE5VTEwpClsuLi5dCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVy IHVzZSB0YWJzCiMxMDY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjIxOgorXklpZiggKFNJTl9U QUJMRSA9IG1hbGxvYyhTSU5fRU5UKjQgKnNpemVvZihpbnQzMl90ICopKSkgPT0gTlVMTCkkCgpF UlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0ICcqJyAoY3R4OlZ4VikKIzEwNjogRklM RTogaHcvYXVkaW8vZm1vcGwuYzo2MjE6CisJaWYoIChTSU5fVEFCTEUgPSBtYWxsb2MoU0lOX0VO VCo0ICpzaXplb2YoaW50MzJfdCAqKSkpID09IE5VTEwpCiAJICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIF4KCkVSUk9SOiBzcGFjZXMgcmVxdWlyZWQgYXJvdW5kIHRoYXQgJyonIChjdHg6 V3hWKQojMTA2OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjYyMToKKwlpZiggKFNJTl9UQUJMRSA9 IG1hbGxvYyhTSU5fRU5UKjQgKnNpemVvZihpbnQzMl90ICopKSkgPT0gTlVMTCkKIAkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlIHByb2hpYml0ZWQgYWZ0 ZXIgdGhhdCBvcGVuIHBhcmVudGhlc2lzICcoJwojMTA2OiBGSUxFOiBody9hdWRpby9mbW9wbC5j OjYyMToKKwlpZiggKFNJTl9UQUJMRSA9IG1hbGxvYyhTSU5fRU5UKjQgKnNpemVvZihpbnQzMl90 ICopKSkgPT0gTlVMTCkKCkVSUk9SOiBzcGFjZSByZXF1aXJlZCBiZWZvcmUgdGhlIG9wZW4gcGFy ZW50aGVzaXMgJygnCiMxMDY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjIxOgorCWlmKCAoU0lO X1RBQkxFID0gbWFsbG9jKFNJTl9FTlQqNCAqc2l6ZW9mKGludDMyX3QgKikpKSA9PSBOVUxMKQoK RVJST1I6IGRvIG5vdCB1c2UgYXNzaWdubWVudCBpbiBpZiBjb25kaXRpb24KIzEwNjogRklMRTog aHcvYXVkaW8vZm1vcGwuYzo2MjE6CisJaWYoIChTSU5fVEFCTEUgPSBtYWxsb2MoU0lOX0VOVCo0 ICpzaXplb2YoaW50MzJfdCAqKSkpID09IE5VTEwpCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxk IG5ldmVyIHVzZSB0YWJzCiMxMTI6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjI2OgorXklpZigg KEFNU19UQUJMRSA9IG1hbGxvYyhBTVNfRU5UKjIgKnNpemVvZihpbnQzMl90KSkpID09IE5VTEwp JAoKRVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKicgKGN0eDpWeFYpCiMxMTI6 IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjI2OgorCWlmKCAoQU1TX1RBQkxFID0gbWFsbG9jKEFN U19FTlQqMiAqc2l6ZW9mKGludDMyX3QpKSkgPT0gTlVMTCkKIAkgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKicgKGN0 eDpXeFYpCiMxMTI6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjI2OgorCWlmKCAoQU1TX1RBQkxF ID0gbWFsbG9jKEFNU19FTlQqMiAqc2l6ZW9mKGludDMyX3QpKSkgPT0gTlVMTCkKIAkgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlIHByb2hpYml0ZWQgYWZ0 ZXIgdGhhdCBvcGVuIHBhcmVudGhlc2lzICcoJwojMTEyOiBGSUxFOiBody9hdWRpby9mbW9wbC5j OjYyNjoKKwlpZiggKEFNU19UQUJMRSA9IG1hbGxvYyhBTVNfRU5UKjIgKnNpemVvZihpbnQzMl90 KSkpID09IE5VTEwpCgpFUlJPUjogc3BhY2UgcmVxdWlyZWQgYmVmb3JlIHRoZSBvcGVuIHBhcmVu dGhlc2lzICcoJwojMTEyOiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjYyNjoKKwlpZiggKEFNU19U QUJMRSA9IG1hbGxvYyhBTVNfRU5UKjIgKnNpemVvZihpbnQzMl90KSkpID09IE5VTEwpCgpFUlJP UjogZG8gbm90IHVzZSBhc3NpZ25tZW50IGluIGlmIGNvbmRpdGlvbgojMTEyOiBGSUxFOiBody9h dWRpby9mbW9wbC5jOjYyNjoKKwlpZiggKEFNU19UQUJMRSA9IG1hbGxvYyhBTVNfRU5UKjIgKnNp emVvZihpbnQzMl90KSkpID09IE5VTEwpCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVy IHVzZSB0YWJzCiMxMTk6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjMyOgorXklpZiggKFZJQl9U QUJMRSA9IG1hbGxvYyhWSUJfRU5UKjIgKnNpemVvZihpbnQzMl90KSkpID09IE5VTEwpJAoKRVJS T1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKicgKGN0eDpWeFYpCiMxMTk6IEZJTEU6 IGh3L2F1ZGlvL2Ztb3BsLmM6NjMyOgorCWlmKCAoVklCX1RBQkxFID0gbWFsbG9jKFZJQl9FTlQq MiAqc2l6ZW9mKGludDMyX3QpKSkgPT0gTlVMTCkKIAkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgXgoKRVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKicgKGN0eDpXeFYp CiMxMTk6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NjMyOgorCWlmKCAoVklCX1RBQkxFID0gbWFs bG9jKFZJQl9FTlQqMiAqc2l6ZW9mKGludDMyX3QpKSkgPT0gTlVMTCkKIAkgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXgoKRVJST1I6IHNwYWNlIHByb2hpYml0ZWQgYWZ0ZXIgdGhh dCBvcGVuIHBhcmVudGhlc2lzICcoJwojMTE5OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjYzMjoK KwlpZiggKFZJQl9UQUJMRSA9IG1hbGxvYyhWSUJfRU5UKjIgKnNpemVvZihpbnQzMl90KSkpID09 IE5VTEwpCgpFUlJPUjogc3BhY2UgcmVxdWlyZWQgYmVmb3JlIHRoZSBvcGVuIHBhcmVudGhlc2lz ICcoJwojMTE5OiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjYzMjoKKwlpZiggKFZJQl9UQUJMRSA9 IG1hbGxvYyhWSUJfRU5UKjIgKnNpemVvZihpbnQzMl90KSkpID09IE5VTEwpCgpFUlJPUjogZG8g bm90IHVzZSBhc3NpZ25tZW50IGluIGlmIGNvbmRpdGlvbgojMTE5OiBGSUxFOiBody9hdWRpby9m bW9wbC5jOjYzMjoKKwlpZiggKFZJQl9UQUJMRSA9IG1hbGxvYyhWSUJfRU5UKjIgKnNpemVvZihp bnQzMl90KSkpID09IE5VTEwpCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0 YWJzCiMxNDY6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6MzM6CiteSWludDMyX3QgVEw7XkleSS8q IHRvdGFsIGxldmVsICAgICA6VEwgPDwgOCAgICAgICAgICAgICovJAoKRVJST1I6IGNvZGUgaW5k ZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTQ3OiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjM0 OgorXklpbnQzMl90IFRMTDteSV5JLyogYWRqdXN0ZWQgbm93IFRMICAgICAgICAgICAgICAgICAg ICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxNTM6IEZJ TEU6IGh3L2F1ZGlvL2Ztb3BsLmg6MzY6CiteSWludDMyX3QgKkFSO15JXkkvKiBhdHRhY2sgcmF0 ZSAgICAgOiZBUl9UQUJMRVtBUjw8Ml0gICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQg bmV2ZXIgdXNlIHRhYnMKIzE1NDogRklMRTogaHcvYXVkaW8vZm1vcGwuaDozNzoKK15JaW50MzJf dCAqRFI7XkleSS8qIGRlY2F5IHJhdGUgICAgICA6JkRSX1RBTEJFW0RSPDwyXSAgICovJAoKRVJS T1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTU1OiBGSUxFOiBody9hdWRp by9mbW9wbC5oOjM4OgorXklpbnQzMl90IFNMO15JXkkvKiBzdXN0aW4gbGV2ZWwgICAgOlNMX1RB TEJFW1NMXSAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRh YnMKIzE1NjogRklMRTogaHcvYXVkaW8vZm1vcGwuaDozOToKK15JaW50MzJfdCAqUlI7XkleSS8q IHJlbGVhc2UgcmF0ZSAgICA6JkRSX1RBQkxFW1JSPDwyXSAgICovJAoKRVJST1I6IGNvZGUgaW5k ZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTcwOiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjQ4 OgorXklpbnQzMl90IGV2YzteSV5JLyogZW52ZWxvcGUgY291bnRlciAgICAgICAgICAgICAgICAg ICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMxNzE6IEZJ TEU6IGh3L2F1ZGlvL2Ztb3BsLmg6NDk6CiteSWludDMyX3QgZXZlO15JXkkvKiBlbnZlbG9wZSBj b3VudGVyIGVuZCBwb2ludCAgICAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQg bmV2ZXIgdXNlIHRhYnMKIzE3MjogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo1MDoKK15JaW50MzJf dCBldnM7XkleSS8qIGVudmVsb3BlIGNvdW50ZXIgc3RlcCAgICAgICAgICAgICAgICovJAoKRVJS T1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMTczOiBGSUxFOiBody9hdWRp by9mbW9wbC5oOjUxOgorXklpbnQzMl90IGV2c2E7XkkvKiBlbnZlbG9wZSBzdGVwIGZvciBBUiA6 QVJba3NyXSAgICAgICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVz ZSB0YWJzCiMxNzQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6NTI6CiteSWludDMyX3QgZXZzZDte SS8qIGVudmVsb3BlIHN0ZXAgZm9yIERSIDpEUltrc3JdICAgICAgICAgICAqLyQKCkVSUk9SOiBj b2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzE3NTogRklMRTogaHcvYXVkaW8vZm1v cGwuaDo1MzoKK15JaW50MzJfdCBldnNyO15JLyogZW52ZWxvcGUgc3RlcCBmb3IgUlIgOlJSW2tz cl0gICAgICAgICAgICovJAoKRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFi cwojMTgxOiBGSUxFOiBody9hdWRpby9mbW9wbC5oOjU4OgorXklpbnQzMl90ICoqd2F2ZXRhYmxl OyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzE5MjogRklMRTog aHcvYXVkaW8vZm1vcGwuaDo2NjoKK15JaW50MzJfdCAqY29ubmVjdDE7XkkvKiBzbG90MSBvdXRw dXQgcG9pbnRlciAgICAgICAgICAgICAgICAqLyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQg bmV2ZXIgdXNlIHRhYnMKIzE5MzogRklMRTogaHcvYXVkaW8vZm1vcGwuaDo2NzoKK15JaW50MzJf dCAqY29ubmVjdDI7XkkvKiBzbG90MiBvdXRwdXQgcG9pbnRlciAgICAgICAgICAgICAgICAqLyQK CkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzE5NDogRklMRTogaHcv YXVkaW8vZm1vcGwuaDo2ODoKK15JaW50MzJfdCBvcDFfb3V0WzJdO15JLyogc2xvdDEgb3V0cHV0 IGZvciBzZWxmZWVkYmFjayAgICAgICAgKi8kCgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5l dmVyIHVzZSB0YWJzCiMyMDQ6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6MTAzOgorXklpbnQzMl90 IEFSX1RBQkxFWzc1XTteSS8qIGF0dHRhY2sgcmF0ZSB0YWJsZXMgKi8kCgpFUlJPUjogY29kZSBp bmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMyMDU6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6 MTA0OgorXklpbnQzMl90IERSX1RBQkxFWzc1XTteSS8qIGRlY2F5IHJhdGUgdGFibGVzICAgKi8k CgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMyMTQ6IEZJTEU6IGh3 L2F1ZGlvL2Ztb3BsLmg6MTA3OgorXklpbnQzMl90ICphbXNfdGFibGU7JAoKRVJST1I6IGNvZGUg aW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMjE1OiBGSUxFOiBody9hdWRpby9mbW9wbC5o OjEwODoKK15JaW50MzJfdCAqdmliX3RhYmxlOyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQg bmV2ZXIgdXNlIHRhYnMKIzIxNjogRklMRTogaHcvYXVkaW8vZm1vcGwuaDoxMDk6CiteSWludDMy X3QgYW1zQ250OyQKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIgdXNlIHRhYnMKIzIx NzogRklMRTogaHcvYXVkaW8vZm1vcGwuaDoxMTA6CiteSWludDMyX3QgYW1zSW5jcjskCgpFUlJP UjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMyMTg6IEZJTEU6IGh3L2F1ZGlv L2Ztb3BsLmg6MTExOgorXklpbnQzMl90IHZpYkNudDskCgpFUlJPUjogY29kZSBpbmRlbnQgc2hv dWxkIG5ldmVyIHVzZSB0YWJzCiMyMTk6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmg6MTEyOgorXklp bnQzMl90IHZpYkluY3I7JAoKdG90YWw6IDU2IGVycm9ycywgMCB3YXJuaW5ncywgMTkyIGxpbmVz IGNoZWNrZWQKCllvdXIgcGF0Y2ggaGFzIHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3LiAg SWYgYW55IG9mIHRoZXNlIGVycm9ycwphcmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9ydCB0aGVtIHRv IHRoZSBtYWludGFpbmVyLCBzZWUKQ0hFQ0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4KCkNoZWNraW5n IFBBVENIIDE1LzMwOiBhdWRpbzogVW5mb2xkIE9QTFNBTVBMRS4uLgpFUlJPUjogY29kZSBpbmRl bnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiMyMjogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo5OTE6 CiteSWludDE2X3QgKmJ1ZiA9IGJ1ZmZlcjskCgp0b3RhbDogMSBlcnJvcnMsIDAgd2FybmluZ3Ms IDI1IGxpbmVzIGNoZWNrZWQKCllvdXIgcGF0Y2ggaGFzIHN0eWxlIHByb2JsZW1zLCBwbGVhc2Ug cmV2aWV3LiAgSWYgYW55IG9mIHRoZXNlIGVycm9ycwphcmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9y dCB0aGVtIHRvIHRoZSBtYWludGFpbmVyLCBzZWUKQ0hFQ0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4K CkNoZWNraW5nIFBBVENIIDE2LzMwOiBhdWRpbzogUmVtb3ZlIFVudXNlZCBPUExfVFlQRV8qLi4u CkNoZWNraW5nIFBBVENIIDE3LzMwOiBhdWRpbzogUmVtb3ZlIHR5cGUgZmllbGQuLi4KRVJST1I6 IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2UgdGFicwojMzU6IEZJTEU6IGh3L2F1ZGlvL2Zt b3BsLmM6NzY0OgorXkleSV5JT1BMLT53YXZlc2VsID0gdiYweDIwOyQKCkVSUk9SOiBzcGFjZXMg cmVxdWlyZWQgYXJvdW5kIHRoYXQgJyYnIChjdHg6VnhWKQojMzU6IEZJTEU6IGh3L2F1ZGlvL2Zt b3BsLmM6NzY0OgorCQkJT1BMLT53YXZlc2VsID0gdiYweDIwOwogCQkJICAgICAgICAgICAgICAg IF4KCkVSUk9SOiBzcGFjZSByZXF1aXJlZCBiZWZvcmUgdGhlIG9wZW4gcGFyZW50aGVzaXMgJygn CiMzNjogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo3NjU6CisgICAgICAgICAgICAgICAgICAgICAg ICBpZighT1BMLT53YXZlc2VsKQoKRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2Ug dGFicwojNDA6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NzY3OgorXkleSV5JXkkvKiBwcmVzZXQg Y29tcGF0aWJsZSBtb2RlICovJAoKRVJST1I6IGNvZGUgaW5kZW50IHNob3VsZCBuZXZlciB1c2Ug dGFicwojNDE6IEZJTEU6IGh3L2F1ZGlvL2Ztb3BsLmM6NzY4OgorXkleSV5JXklpbnQgYzskCgpF UlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM0MjogRklMRTogaHcvYXVk aW8vZm1vcGwuYzo3Njk6CiteSV5JXkleSWZvcihjPTA7YzxPUEwtPm1heF9jaDtjKyspJAoKRVJS T1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnPScgKGN0eDpWeFYpCiM0MjogRklMRTog aHcvYXVkaW8vZm1vcGwuYzo3Njk6CisJCQkJZm9yKGM9MDtjPE9QTC0+bWF4X2NoO2MrKykKIAkJ CQkgICAgIF4KCkVSUk9SOiBzcGFjZSByZXF1aXJlZCBhZnRlciB0aGF0ICc7JyAoY3R4OlZ4VikK IzQyOiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjc2OToKKwkJCQlmb3IoYz0wO2M8T1BMLT5tYXhf Y2g7YysrKQogCQkJCSAgICAgICBeCgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0 ICc8JyAoY3R4OlZ4VikKIzQyOiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjc2OToKKwkJCQlmb3Io Yz0wO2M8T1BMLT5tYXhfY2g7YysrKQogCQkJCSAgICAgICAgIF4KCkVSUk9SOiBzcGFjZSByZXF1 aXJlZCBhZnRlciB0aGF0ICc7JyAoY3R4OlZ4VikKIzQyOiBGSUxFOiBody9hdWRpby9mbW9wbC5j Ojc2OToKKwkJCQlmb3IoYz0wO2M8T1BMLT5tYXhfY2g7YysrKQogCQkJCSAgICAgICAgICAgICAg ICAgICAgIF4KCkVSUk9SOiBzcGFjZSByZXF1aXJlZCBiZWZvcmUgdGhlIG9wZW4gcGFyZW50aGVz aXMgJygnCiM0MjogRklMRTogaHcvYXVkaW8vZm1vcGwuYzo3Njk6CisJCQkJZm9yKGM9MDtjPE9Q TC0+bWF4X2NoO2MrKykKCkVSUk9SOiBsaW5lIG92ZXIgOTAgY2hhcmFjdGVycwojNTE6IEZJTEU6 IGh3L2F1ZGlvL2Ztb3BsLmM6NzcxOgorCQkJCQlPUEwtPlBfQ0hbY10uU0xPVFtTTE9UMV0ud2F2 ZXRhYmxlID0gJlNJTl9UQUJMRVswXTsKCkVSUk9SOiBjb2RlIGluZGVudCBzaG91bGQgbmV2ZXIg dXNlIHRhYnMKIzUxOiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjc3MToKK15JXkleSV5JXklPUEwt PlBfQ0hbY10uU0xPVFtTTE9UMV0ud2F2ZXRhYmxlID0gJlNJTl9UQUJMRVswXTskCgpFUlJPUjog bGluZSBvdmVyIDkwIGNoYXJhY3RlcnMKIzUyOiBGSUxFOiBody9hdWRpby9mbW9wbC5jOjc3MjoK KwkJCQkJT1BMLT5QX0NIW2NdLlNMT1RbU0xPVDJdLndhdmV0YWJsZSA9ICZTSU5fVEFCTEVbMF07 CgpFUlJPUjogY29kZSBpbmRlbnQgc2hvdWxkIG5ldmVyIHVzZSB0YWJzCiM1MjogRklMRTogaHcv YXVkaW8vZm1vcGwuYzo3NzI6CiteSV5JXkleSV5JT1BMLT5QX0NIW2NdLlNMT1RbU0xPVDJdLndh dmV0YWJsZSA9ICZTSU5fVEFCTEVbMF07JAoKdG90YWw6IDE1IGVycm9ycywgMCB3YXJuaW5ncywg NzMgbGluZXMgY2hlY2tlZAoKWW91ciBwYXRjaCBoYXMgc3R5bGUgcHJvYmxlbXMsIHBsZWFzZSBy ZXZpZXcuICBJZiBhbnkgb2YgdGhlc2UgZXJyb3JzCmFyZSBmYWxzZSBwb3NpdGl2ZXMgcmVwb3J0 IHRoZW0gdG8gdGhlIG1haW50YWluZXIsIHNlZQpDSEVDS1BBVENIIGluIE1BSU5UQUlORVJTLgoK Q2hlY2tpbmcgUEFUQ0ggMTgvMzA6IGF1ZGlvOiBSZW1vdmUgdW51c2VkIGZpZWxkcy4uLgpDaGVj a2luZyBQQVRDSCAxOS8zMDogYXVkaW86IEdVU2J5dGUgaXMgdWludDhfdC4uLgpFUlJPUjogbGlu ZSBvdmVyIDkwIGNoYXJhY3RlcnMKIzM2OiBGSUxFOiBody9hdWRpby9ndXNlbXUuaDo0NDoKKyB1 aW50OF90ICpoaW1lbWFkZHI7IC8qIDEwMjQqMTAyNCBieXRlcyB1c2VkIGZvciBzdG9yaW5nIHVw bG9hZGVkIHNhbXBsZXMgKCszMiBhZGRpdGlvbmFsIGJ5dGVzIGZvciByZWFkIHBhZGRpbmcpICov CgpFUlJPUjogbGluZSBvdmVyIDkwIGNoYXJhY3RlcnMKIzM3OiBGSUxFOiBody9hdWRpby9ndXNl bXUuaDo0NToKKyB1aW50OF90ICpndXNkYXRhcG9zOyAvKiAoZ3VzZGF0YWVuZC1ndXNkYXRhKSBi eXRlcyB1c2VkIGZvciBzdG9yaW5nIGVtdWxhdGVkIEdGMS9taXhlciByZWdpc3RlciBzdGF0ZXMg KDMyKjMyKzQgYnl0ZXMgaW4gaW5pdGlhbCBHVVNlbXUzMiB2ZXJzaW9uKSAqLwoKV0FSTklORzog bGluZSBvdmVyIDgwIGNoYXJhY3RlcnMKIzEyNTogRklMRTogaHcvYXVkaW8vZ3VzZW11X2hhbC5j OjI0MToKKyAgICAgICAgICAgICAgICBHVVNyZWdiKElSUV8yeEIpID0gKHVpbnQ4X3QpIGRhdGE7 IC8qIGNvbnRyb2wgcmVnaXN0ZXIgc2VsZWN0IGJpdCAqLwoKV0FSTklORzogbGluZSBvdmVyIDgw IGNoYXJhY3RlcnMKIzE2NDogRklMRTogaHcvYXVkaW8vZ3VzZW11X2hhbC5jOjI3ODoKKyAgICAg ICAgaWYgKCh1aW50OF90KSBkYXRhID09IDB4OGYpIC8qIHNldCBpcnFzdGF0cmVnLCBnZXQgdm9p Y2VyZWcgYW5kIGNsZWFyIElSUSAqLwoKRVJST1I6IGxpbmUgb3ZlciA5MCBjaGFyYWN0ZXJzCiMy NDE6IEZJTEU6IGh3L2F1ZGlvL2d1c2VtdV9oYWwuYzo1MjU6CisgICAgR1VTcmVnYihHVVM1MERN QUhpZ2gpICAgPSAodWludDhfdCkgKChjb3VudCArIEdVU3JlZ2IoR1VTNTBETUFIaWdoKSkgJiAw eGYpOyAvKiBUb0RvOiBhZGQgMTZiaXQgR1VTIHBhZ2UgbGltaXQ/ICovCgpFUlJPUjogc3BhY2Ug cHJvaGliaXRlZCBhZnRlciB0aGF0ICcmJyAoY3R4Old4VykKIzI0MTogRklMRTogaHcvYXVkaW8v Z3VzZW11X2hhbC5jOjUyNToKKyAgICBHVVNyZWdiKEdVUzUwRE1BSGlnaCkgICA9ICh1aW50OF90 KSAoKGNvdW50ICsgR1VTcmVnYihHVVM1MERNQUhpZ2gpKSAmIDB4Zik7IC8qIFRvRG86IGFkZCAx NmJpdCBHVVMgcGFnZSBsaW1pdD8gKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgp0b3RhbDogNCBlcnJv cnMsIDIgd2FybmluZ3MsIDIyNSBsaW5lcyBjaGVja2VkCgpZb3VyIHBhdGNoIGhhcyBzdHlsZSBw cm9ibGVtcywgcGxlYXNlIHJldmlldy4gIElmIGFueSBvZiB0aGVzZSBlcnJvcnMKYXJlIGZhbHNl IHBvc2l0aXZlcyByZXBvcnQgdGhlbSB0byB0aGUgbWFpbnRhaW5lciwgc2VlCkNIRUNLUEFUQ0gg aW4gTUFJTlRBSU5FUlMuCgpDaGVja2luZyBQQVRDSCAyMC8zMDogYXVkaW86IHJlbW92ZSBHVVNj aGFyLi4uCkNoZWNraW5nIFBBVENIIDIxLzMwOiBhdWRpbzogR1VTd29yZCBpcyB1aW50MTZfdC4u LgpDaGVja2luZyBQQVRDSCAyMi8zMDogYXVkaW86IEdVU3dvcmQgaXMgdWludDE2X3QuLi4KRVJS T1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKycgKGN0eDpWeFYpCiMyMDogRklMRTog aHcvYXVkaW8vZ3VzZW11X2hhbC5jOjM0OgorI2RlZmluZSBHVVNyZWd3KHBvc2l0aW9uKSAoKih1 aW50MTZfdCAqKSAoZ3VzcHRyKyhwb3NpdGlvbikpKQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgXgoKRVJST1I6IGxpbmUgb3ZlciA5MCBjaGFyYWN0ZXJz CiM1NzogRklMRTogaHcvYXVkaW8vZ3VzZW11X2hhbC5jOjM1NjoKKyAgICAgICAgICAgICAgICAg ICAgR1VTcmVndyhvZmZzZXQpID0gKHVpbnQxNl90KSAoKEdVU3JlZ3cob2Zmc2V0KSAmIHJlYWRt YXNrKSB8IHdyaXRlZGF0YSk7CgpFUlJPUjogbGluZSBvdmVyIDkwIGNoYXJhY3RlcnMKIzY2OiBG SUxFOiBody9hdWRpby9ndXNlbXVfaGFsLmM6NTI0OgorICAgIEdVU3JlZ3coR1VTNDJETUFTdGFy dCkgKz0gKHVpbnQxNl90KSAgKGNvdW50ID4+IDQpOyAgICAgICAgICAgICAgICAgICAgICAgICAg IC8qIFRvRG86IGFkZCAxNmJpdCBHVVMgcGFnZSBsaW1pdD8gKi8KCkVSUk9SOiBzcGFjZXMgcmVx dWlyZWQgYXJvdW5kIHRoYXQgJysnIChjdHg6VnhWKQojNzk6IEZJTEU6IGh3L2F1ZGlvL2d1c2Vt dV9taXhlci5jOjMwOgorI2RlZmluZSBHVVNyZWd3KHBvc2l0aW9uKSAgKCoodWludDE2X3QgKikg KGd1c3B0cisocG9zaXRpb24pKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBeCgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3VuZCB0aGF0ICcrJyAo Y3R4OlZ4VikKIzgzOiBGSUxFOiBody9hdWRpby9ndXNlbXVfbWl4ZXIuYzozMzoKKyNkZWZpbmUg R1VTdm9pY2UocG9zaXRpb24pICgqKHVpbnQxNl90ICopKHZvaWNlcHRyKyhwb3NpdGlvbikpKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgp0b3Rh bDogNSBlcnJvcnMsIDAgd2FybmluZ3MsIDc4IGxpbmVzIGNoZWNrZWQKCllvdXIgcGF0Y2ggaGFz IHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3LiAgSWYgYW55IG9mIHRoZXNlIGVycm9ycwph cmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9ydCB0aGVtIHRvIHRoZSBtYWludGFpbmVyLCBzZWUKQ0hF Q0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4KCkNoZWNraW5nIFBBVENIIDIzLzMwOiBhdWRpbzogR1VT c2FtcGxlIGlzIGludDE2X3QuLi4KRVJST1I6IGxpbmUgb3ZlciA5MCBjaGFyYWN0ZXJzCiM1MDog RklMRTogaHcvYXVkaW8vZ3VzZW11Lmg6Nzk6Cit2b2lkIGd1c19taXh2b2ljZXMoR1VTRW11U3Rh dGUgKnN0YXRlLCB1bnNpZ25lZCBpbnQgcGxheWJhY2tfZnJlcSwgdW5zaWduZWQgaW50IG51bXNh bXBsZXMsIGludDE2X3QgKmJ1ZmZlcnBvcyk7CgpFUlJPUjogc3BhY2VzIHJlcXVpcmVkIGFyb3Vu ZCB0aGF0ICcrJyAoY3R4OlZ4VikKIzYzOiBGSUxFOiBody9hdWRpby9ndXNlbXVfaGFsLmM6MzU6 CisjZGVmaW5lIEdVU3JlZ2QocG9zaXRpb24pICgqKHVpbnQxNl90ICopKGd1c3B0cisocG9zaXRp b24pKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXgoK RVJST1I6IHNwYWNlcyByZXF1aXJlZCBhcm91bmQgdGhhdCAnKycgKGN0eDpWeFYpCiM3NjogRklM RTogaHcvYXVkaW8vZ3VzZW11X21peGVyLmM6MzE6CisjZGVmaW5lIEdVU3JlZ2QocG9zaXRpb24p ICAoKih1aW50MTZfdCAqKShndXNwdHIrKHBvc2l0aW9uKSkpCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBeCgpFUlJPUjogbGluZSBvdmVyIDkwIGNoYXJh Y3RlcnMKIzkzOiBGSUxFOiBody9hdWRpby9ndXNlbXVfbWl4ZXIuYzoxNzQ6CisgICAgICAgICAg ICAgICAgKihidWZmZXJwb3MgKyAyICogc2FtcGxlKSAgICAgKz0gKGludDE2X3QpICgoc2FtcGxl MSAqIFBhbm5pbmdQb3MpID4+IDQpOyAgICAgICAgLyogcmlnaHQgKi8KCkVSUk9SOiBsaW5lIG92 ZXIgOTAgY2hhcmFjdGVycwojOTQ6IEZJTEU6IGh3L2F1ZGlvL2d1c2VtdV9taXhlci5jOjE3NToK KyAgICAgICAgICAgICAgICAqKGJ1ZmZlcnBvcyArIDIgKiBzYW1wbGUgKyAxKSArPSAoaW50MTZf dCkgKChzYW1wbGUxICogKDE1IC0gUGFubmluZ1BvcykpID4+IDQpOyAvKiBsZWZ0ICovCgp0b3Rh bDogNSBlcnJvcnMsIDAgd2FybmluZ3MsIDY1IGxpbmVzIGNoZWNrZWQKCllvdXIgcGF0Y2ggaGFz IHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3LiAgSWYgYW55IG9mIHRoZXNlIGVycm9ycwph cmUgZmFsc2UgcG9zaXRpdmVzIHJlcG9ydCB0aGVtIHRvIHRoZSBtYWludGFpbmVyLCBzZWUKQ0hF Q0tQQVRDSCBpbiBNQUlOVEFJTkVSUy4KCkNoZWNraW5nIFBBVENIIDI0LzMwOiBhdWRpbzogT1BM U2V0SVJRSGFuZGxlciBpcyBub3QgdXNlZCBhbnl3aGVyZS4uLgpDaGVja2luZyBQQVRDSCAyNS8z MDogYXVkaW86IE9QTFNldFVwZGF0ZUhhbmRsZXIgaXMgbm90IHVzZWQgYW55d2hlcmUuLi4KQ2hl Y2tpbmcgUEFUQ0ggMjYvMzA6IGF1ZGlvOiBJUlFIYW5kbGVyIGlzIG5vdCB1c2VkIGFueW1vcmUu Li4KQ2hlY2tpbmcgUEFUQ0ggMjcvMzA6IGF1ZGlvOiBVcGRhdGVIYW5kbGVyIGlzIG5vdCB1c2Vk IGFueW1vcmUuLi4KQ2hlY2tpbmcgUEFUQ0ggMjgvMzA6IGF1ZGlvOiBSZW1vdmUgdW51c2VkIHR5 cGVkZWZzLi4uCkNoZWNraW5nIFBBVENIIDI5LzMwOiBhdWRpbzogdW4tZXhwb3J0IE9QTFJlc2V0 Q2hpcC4uLgpDaGVja2luZyBQQVRDSCAzMC8zMDogYXVkaW86IFVzZSBBUlJBWV9TSVpFIGZyb20g cWVtdS9vc2RlcC5oLi4uCj09PSBPVVRQVVQgRU5EID09PQoKVGVzdCBjb21tYW5kIGV4aXRlZCB3 aXRoIGNvZGU6IDEKCgotLS0KRW1haWwgZ2VuZXJhdGVkIGF1dG9tYXRpY2FsbHkgYnkgUGF0Y2hl dyBbaHR0cDovL3BhdGNoZXcub3JnL10uClBsZWFzZSBzZW5kIHlvdXIgZmVlZGJhY2sgdG8gcGF0 Y2hldy1kZXZlbEBmcmVlbGlzdHMub3Jn