Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w3Hhn-0014tm-1O for pgsql-hackers@arkaria.postgresql.org; Thu, 19 Mar 2026 18:02:48 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w3Hhm-001fpa-04 for pgsql-hackers@arkaria.postgresql.org; Thu, 19 Mar 2026 18:02:46 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1w3Hhl-001fpP-0z for pgsql-hackers@lists.postgresql.org; Thu, 19 Mar 2026 18:02:46 +0000 Received: from out0-208.mail.aliyun.com ([140.205.0.208]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1w3Hhg-000000002u5-3gkD for pgsql-hackers@postgresql.org; Thu, 19 Mar 2026 18:02:45 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alibaba-inc.com; s=default; t=1773943355; h=Date:From:To:Message-ID:Subject:MIME-Version:Content-Type; bh=MY0FapN+ZpkaZ444l3/hczOWjgqQxiZJdF8V+NimP4I=; b=rSuNxftyp/1ZTJKKkonpeJ2p3XEGri20hE+vfFTIerM6xUEDamdmEBl3FYPJRAllKnzyydr9OAvfCxYsyVmC6noozVvfNgZAY8408bgLECD2s0X0/5Oj9wuzEcuDASt4vsefaa3Y//5faxIJp7KIjIU9prkhgpzNph2uQ6paB/c= X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R131e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=maildocker-contentspam033037031241;MF=duankunren.dkr@alibaba-inc.com;NM=1;PH=DW;RN=2;SR=0;TI=W4_0.2.3_214753A0_1773941304572_o7001c125q; Received: from WS-web (duankunren.dkr@alibaba-inc.com[W4_0.2.3_214753A0_1773941304572_o7001c125q] cluster:ay29) at Fri, 20 Mar 2026 02:02:30 +0800 Date: Fri, 20 Mar 2026 02:02:30 +0800 From: "=?UTF-8?B?5q615Z2k5LuBKOWIu+mfpyk=?=" To: "pgsql-hackers" Cc: "hlinnaka" Reply-To: "=?UTF-8?B?5q615Z2k5LuBKOWIu+mfpyk=?=" Message-ID: Subject: =?UTF-8?B?QnVnIGluIE11bHRpWGFjdCByZXBsYXkgY29tcGF0IGxvZ2ljIGZvciBvbGRlciBtaW5vciB2?= =?UTF-8?B?ZXJzaW9uIGFmdGVyIGNyYXNoLXJlY292ZXJ5?= X-Mailer: [Alimail-Mailagent][W4_0.2.3][null][Unknown] MIME-Version: 1.0 x-aliyun-im-through: {"version":"v1.0"} x-aliyun-mail-creator: W4_0.2.3_null_MC4YXhpb3MvMC4yNy4y3M Content-Type: multipart/mixed; boundary="----=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 SGkgaGFja2VycywKwqAgwqAgClRoaXMgaXMgcmVsYXRlZCB0byB0d28gcmVjZW50IHRocmVhZHM6 CsKgIMKgIApbMF0gaHR0cHM6Ly93d3cucG9zdGdyZXNxbC5vcmcvbWVzc2FnZS1pZC9mbGF0LzE3 MmU1NzIzLWQ2NWYtNGVlYy1iNTEyLTE0YmVhY2IzMjZjZSU0MHlhbmRleC5ydQpbMV0gaHR0cHM6 Ly93d3cucG9zdGdyZXNxbC5vcmcvbWVzc2FnZS1pZC9mbGF0L0NBQ1YydFN3M1ZZUzdkMjdmdE9f Y3MlMkJhRjNNNTQlMkJKd1dCYnFTR0xjS29HOWN2eWI2RUElNDBtYWlsLmdtYWlsLmNvbQrCoCDC oCAKSSB0aGluayB0aGVyZSBtYXkgYmUgYSBidWcgaW4gdGhlIGNvbXBhdCBsb2dpYyBpbnRyb2R1 Y2VkIGluClJlY29yZE5ld011bHRpWGFjdCgpIHRvIGZpeCBbMF0uIFRoZSBjb21wYXQgbG9naWMg aGFuZGxlcyBXQUwKZ2VuZXJhdGVkIGJ5IG9sZGVywqAgbWlub3IgdmVyc2lvbnMgd2hlcmUgWkVS T19PRkZfUEFHRSBOKzEKbWF5IGFwcGVhciBhZnRlciBDUkVBVEVfSUQ6TiBpbiB0aGUgV0FMIHN0 cmVhbS4gSG93ZXZlciwgdGhlIGNvbmRpdGlvbgp1c2VkIHRvIGRldGVjdCB3aGV0aGVyIHRoZSBu ZXh0IG9mZnNldCBwYWdlIG5lZWRzIGluaXRpYWxpemF0aW9uCnNlZW1zIHRvIGZhaWwgYWZ0ZXIg YSBjcmFzaC1yZXN0YXJ0LCBjYXVzaW5nIHRoZSBzdGFuZGJ5IHRvIGVudGVyIGEKRkFUQUwgY3Jh c2ggbG9vcC4KwqAgwqAgCldlIGhpdCB0aGlzIGluIHByb2R1Y3Rpb246IGEgUEcgMTYuMTIgc3Rh bmRieSByZXBsYXlpbmcgV0FMIGZyb20gYQpQRyAxNi44IHByaW1hcnkgZW50ZXJlZCBhIGNyYXNo LXJlc3RhcnQgbG9vcCB3aXRoOgrCoCDCoCAKPiBGQVRBTDrCoCBjb3VsZCBub3QgYWNjZXNzIHN0 YXR1cyBvZiB0cmFuc2FjdGlvbiAxMjc3OTUyCj4gREVUQUlMOsKgIENvdWxkIG5vdCByZWFkIGZy b20gZmlsZSAicGdfbXVsdGl4YWN0L29mZnNldHMvMDAxMyIgYXQgb2Zmc2V0Cj4gMTMxMDcyOiBy ZWFkIHRvbyBmZXcgYnl0ZXMuCj4gQ09OVEVYVDrCoCBXQUwgcmVkbyBhdCA1MTk0LzVGNUY3MTE4 IGZvciBNdWx0aVhhY3QvQ1JFQVRFX0lEOiAxMjc3OTUxIAo+b2Zmc2V0IDI2MDUyNzUgbm1lbWJl cnMgMjogODE0NjA1NTAwIChrZXlzaCkgODE0NjA1NTAxIChrZXlzaCkKwqAgwqAgCj09IEFuYWx5 c2lzID09CsKgIMKgIApUaGUgY29tcGF0IGxvZ2ljIGNvbmRpdGlvbiBpczoKwqAgwqAgCj4gaWYg KEluUmVjb3ZlcnkgJiYKPiDCoCDCoCBuZXh0X3BhZ2VubyAhPSBwYWdlbm8gJiYKPiDCoCDCoCBN dWx0aVhhY3RPZmZzZXRDdGwtPnNoYXJlZC0+bGF0ZXN0X3BhZ2VfbnVtYmVyID09IHBhZ2VubykK wqAgwqAgClRoZSB0aGlyZCBjb25kaXRpb24gKGxhdGVzdF9wYWdlX251bWJlciA9PSBwYWdlbm8p IGFzc3VtZXMgdGhhdCBpZgpsYXRlc3RfcGFnZV9udW1iZXIgZXF1YWxzIHRoZSBjdXJyZW50IG11 bHRpeGFjdCdzIHBhZ2UsIHRoZW4gdGhlIG5leHQKcGFnZSBoYXNuJ3QgYmVlbiBpbml0aWFsaXpl ZCB5ZXQuIFRoaXMgd29ya3MgZHVyaW5nIG5vcm1hbCAobm9uLWNyYXNoKQpyZXBsYXkgYmVjYXVz ZSBsYXRlc3RfcGFnZV9udW1iZXIgaXMgaW5jcmVtZW50YWxseSBtYWludGFpbmVkIGJ5ClNpbXBs ZUxydVplcm9QYWdlKCkgY2FsbHMuCsKgIMKgIApCdXQgYWZ0ZXIgYSBjcmFzaC1yZXN0YXJ0LCBT dGFydHVwTXVsdGlYYWN0KCkgcmVzZXRzCmxhdGVzdF9wYWdlX251bWJlciB0byBwYWdlKGNoZWNr UG9pbnQubmV4dE11bHRpKToKwqAgwqAgCj4gdm9pZCBTdGFydHVwTXVsdGlYYWN0KHZvaWQpCj4g ewo+IMKgIMKgIE11bHRpWGFjdElkIG11bHRpID0gTXVsdGlYYWN0U3RhdGUtPm5leHRNWGFjdDsK PiDCoCDCoCBwYWdlbm8gPSBNdWx0aVhhY3RJZFRvT2Zmc2V0UGFnZShtdWx0aSk7Cj4gwqAgwqAg TXVsdGlYYWN0T2Zmc2V0Q3RsLT5zaGFyZWQtPmxhdGVzdF9wYWdlX251bWJlciA9IHBhZ2VubzsK PiB9CsKgIMKgIApXaGVuIHRoZSBjaGVja3BvaW50IGNhcHR1cmVkIGFuIGFscmVhZHktYWR2YW5j ZWQgbmV4dE1YYWN0ICh3aGljaApoYXBwZW5zIHdoZW4gR2V0TmV3TXVsdGlYYWN0SWQoKSBpbmNy ZW1lbnRlZCBuZXh0TVhhY3QgYmVmb3JlIHRoZQpiYWNrZW5kIHdyb3RlIENSRUFURV9JRCB0byBX QUwpLCBjaGVja1BvaW50Lm5leHRNdWx0aSA+PSBOKzEsIHNvCmxhdGVzdF9wYWdlX251bWJlciA9 IHBhZ2UoTisxKSA9IFArMS4gVGhlIGNvbXBhdCBjaGVjayBiZWNvbWVzOgrCoCDCoCAKPiBQKzEg PT0gUMKgIC0+wqAgRkFMU0XCoCAtPsKgIGNvbXBhdCBsb2dpYyBza2lwcGVkCsKgIMKgIApUaGUg c3Vic2VxdWVudCBTaW1wbGVMcnVSZWFkUGFnZShuZXh0X3BhZ2Vubz1QKzEpIHRoZW4gZmFpbHMg YmVjYXVzZQpwYWdlIFArMSBkb2Vzbid0IGV4aXN0IG9uIGRpc2sgKFpFUk9fT0ZGX1BBR0U6UCsx IGhhc24ndCBiZWVuCnJlcGxheWVkIHlldCAtLSBpdCdzIGFmdGVyIENSRUFURV9JRDpOIGluIHRo ZSBXQUwgZHVlIHRvIHRoZQpyZW9yZGVyaW5nIHRoYXQgdGhlIGNvbXBhdCBsb2dpYyBpcyBzdXBw b3NlZCB0byBoYW5kbGUpLgrCoCDCoCAKVGhlIGZpeCBmb3IgWzFdIGFkZHJlc3NlZCBhIHJlbGF0 ZWQgaXNzdWUgd2hlcmUKVFJVTkNBVEUgcmVwbGF5IHJlc2V0IGxhdGVzdF9wYWdlX251bWJlciB0 byBhIHZlcnkgb2xkIHZhbHVlCihsYXRlc3RfcGFnZV9udW1iZXIgPDwgcGFnZW5vKS4gVGhhdCBm aXggYWRkcmVzc2VzIHRoZSAidG9vIHNtYWxsIgpkaXJlY3Rpb24gYnV0IG5vdCB0aGUgInRvbyBs YXJnZSIgZGlyZWN0aW9uIGRlc2NyaWJlZCBoZXJlLgrCoCDCoCAKPT0gVGltZWxpbmU6IHRoZSBs b2NrLWZyZWUgd2luZG93ID09CsKgIMKgIApUaGUgcm9vdCBjYXVzZSBpcyBhIGxvY2stZnJlZSB3 aW5kb3cgaW4gTXVsdGlYYWN0SWRDcmVhdGVGcm9tTWVtYmVycygpLkdldE5ld011bHRpWGFjdElk KCkgYWR2YW5jZXMgbmV4dE1YYWN0IHVuZGVyIE11bHRpWGFjdEdlbkxvY2ssIGJ1dAp0aGUgbG9j ayBpcyByZWxlYXNlZCBCRUZPUkUgWExvZ0luc2VydChDUkVBVEVfSUQpLiBBbnkgY2hlY2twb2lu dAp0aGF0IHJ1bnMgaW4gdGhpcyB3aW5kb3cgY2FwdHVyZXMgdGhlIGFkdmFuY2VkIG5leHRNWGFj dCB3aXRob3V0IHRoZQpjb3JyZXNwb25kaW5nIENSRUFURV9JRCBpbiBXQUwuCsKgIMKgIApBc3N1 bWUgbXVsdGkgTiBpcyB0aGUgbGFzdCBlbnRyeSBvbiBvZmZzZXQgcGFnZSBQIChlbnRyeSAyMDQ3 KSwgc28KbXVsdGkgTisxIGZhbGxzIG9uIHBhZ2UgUCsxLgrCoCDCoCAKMS4gW0JhY2tlbmRdIEdl dE5ld011bHRpWGFjdElkKCk6CiDCoCAtIExXTG9ja0FjcXVpcmUoTXVsdGlYYWN0R2VuTG9jaykK IMKgIC0gcmVzdWx0ID0gbmV4dE1YYWN0ICg9IE4pCiDCoCAtIG5leHRNWGFjdCsrIChub3cgTisx KQogwqAgLSBMV0xvY2tSZWxlYXNlKE11bHRpWGFjdEdlbkxvY2spCiDCoCAtIHJldHVybiBOCiDC oCA8PDwgbG9jay1mcmVlIHdpbmRvdyBvcGVucyBoZXJlID4+PgogwqAgbmV4dE1YYWN0PU4rMSBp cyBnbG9iYWxseSB2aXNpYmxlLCBidXQgQ1JFQVRFX0lEOk4gbm90IGluIFdBTCB5ZXQuCjIuIFtD aGVja3BvaW50ZXJdIENIRUNLUE9JTlQgcnVucyBkdXJpbmcgdGhlIHdpbmRvdzoKIMKgIC0gcmVh ZHMgbmV4dE1YYWN0ID0gTisxCiDCoCAtIHdyaXRlcyBjaGVja3BvaW50IHJlY29yZCB3aXRoIG5l eHRNdWx0aT1OKzEKMy4gW1N0YW5kYnldIHJlcGxheXMgdGhlIGNoZWNrcG9pbnQsIGRvZXMgcmVz dGFydHBvaW50CiDCoCAocGVyc2lzdHMgbmV4dE11bHRpPU4rMSB0byBkaXNrKQo0LiBbU3RhbmRi eV0gKioqIENSQVNIICoqKgogwqAgPDw8IGxvY2stZnJlZSB3aW5kb3cgY2xvc2VzID4+Pgo1LiBb QmFja2VuZF0gWExvZ0luc2VydChDUkVBVEVfSUQ6IE4pCiDCoCAtLSB0aGlzIFdBTCByZWNvcmQg bGFuZHMgQUZURVIgdGhlIGNoZWNrcG9pbnQgcmVjb3JkCjYuIFtCYWNrZW5kXSBSZWNvcmROZXdN dWx0aVhhY3QoTik6CiDCoCAtIG5leHRfcGFnZW5vID0gcGFnZShOKzEpID0gUCsxCiDCoCAtIFNp bXBsZUxydVJlYWRQYWdlKFArMSkgLS0gd29ya3MgZmluZSBvbiBwcmltYXJ5CsKgIMKgIApUaGUg cmVzdWx0aW5nIFdBTCBzdHJlYW0gb24gZGlzazoKPiAuLi4gQ0hFQ0tQT0lOVChuZXh0TXVsdGk9 TisxKSAuLi4gQ1JFQVRFX0lEOk4gLi4uIFpFUk9fT0ZGX1BBR0U6UCsxIC4uLgo+IMKgIMKgIF4g wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgXsKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIF4KPiDCoCDCoCByZWRvIHN0YXJ0cyBoZXJlwqAgwqAgwqAgwqAgwqAgwqAgwqAg bmVlZHMgcGFnZSBQKzEgwqAgcGFnZSBQKzEgaW5pdAo+IMKgIMKgIGFmdGVyIGNyYXNoLXJlc3Rh cnQKwqAgwqAgCkFmdGVyIHN0YW5kYnkgY3Jhc2gtcmVzdGFydDoKNy4gW1N0YW5kYnldIFN0YXJ0 dXBNdWx0aVhhY3QoKToKIMKgIC0gbXVsdGkgPSBuZXh0TVhhY3QgPSBOKzEgKGZyb20gY2hlY2tw b2ludCkKIMKgIC0gbGF0ZXN0X3BhZ2VfbnVtYmVyID0gcGFnZShOKzEpID0gUCsxCjguIFtTdGFu ZGJ5XSBSZWRvIENSRUFURV9JRDpOIC0+IFJlY29yZE5ld011bHRpWGFjdChOKToKIMKgIC0gcGFn ZW5vID0gcGFnZShOKSA9IFAsIG5leHRfcGFnZW5vID0gcGFnZShOKzEpID0gUCsxCiDCoCAtIENv bXBhdCBsb2dpYyBjaGVjazoKIMKgIMKgIEluUmVjb3ZlcnkgPSB0cnVlCiDCoCDCoCBuZXh0X3Bh Z2VubyhQKzEpICE9IHBhZ2VubyhQKQogwqAgwqAgbGF0ZXN0X3BhZ2VfbnVtYmVyKFArMSkgPT0g cGFnZW5vKFApIC0tIEZBSUwKIMKgIMKgIC0tPiBjb21wYXQgbG9naWMgU0tJUFBFRAogwqAgLSBT aW1wbGVMcnVSZWFkUGFnZShQKzEpCiDCoCDCoCBwYWdlIFArMSBub3Qgb24gZGlzayB5ZXQgKFpF Uk9fT0ZGX1BBR0U6UCsxIG5vdCByZXBsYXllZCkKIMKgIMKgIC0tPiBGQVRBTDogcmVhZCB0b28g ZmV3IGJ5dGVzCsKgIMKgIAo9PSBSZXByb2R1Y3Rpb24gPT0KwqAgwqAgCkkgd3JvdGUgYSBkZXRl cm1pbmlzdGljIHJlcHJvZHVjZXIgdXNpbmcgc2xlZXAgaW5qZWN0aW9uLiBBIHNsZWVwCmluamVj dGlvbiBwYXRjaCAoc2xlZXAtaW5qZWN0aW9uLWZvci1tdWx0aXhhY3QtY29tcGF0LWxvZ2ljLWJ1 Zy1yZXByby5wYXRjaCkKYWRkcyBhIDYwLXNlY29uZCBzbGVlcCBpbiBNdWx0aVhhY3RJZENyZWF0 ZUZyb21NZW1iZXJzKCksIGFmdGVyCkdldE5ld011bHRpWGFjdElkKCkgcmV0dXJucyBidXQgYmVm b3JlIFhMb2dJbnNlcnQoQ1JFQVRFX0lEKS4KVGhlIHNsZWVwIG9ubHkgdHJpZ2dlcnMgd2hlbiB0 aGUgYWxsb2NhdGVkIG11bHRpIGlzIHRoZSBsYXN0IGVudHJ5IG9uCmFuIG9mZnNldCBwYWdlIChl bnRyeSAyMDQ3KSBBTkQgdGhlIGZpbGUgL3RtcC9teGFjdF9zbGVlcF9lbmFibGVkIGV4aXN0cwoo c28gdGhlIGJhdGNoIHBoYXNlIHRoYXQgZ2VuZXJhdGVzIG11bHRpeGFjdHMgaXMgbm90IGFmZmVj dGVkKS4KwqAgwqAgClRoZSBzZXR1cDoKwqAgwqAgCi0gUHJpbWFyeTogUEcgMTYuMTEgd2l0aCB0 aGUgc2xlZXAgaW5qZWN0aW9uIHBhdGNoIGFwcGxpZWQuCi0gU3RhbmRieTogUEcgMTYuMTMgKGNv bnRhaW5zIHRoZSBjb21wYXQgbG9naWMgZnJvbSBbMF0gYW5kWzFdKS4KwqAgwqAgClRoZSB0ZXN0 IHNjcmlwdCAodGVzdF9tdWx0aXhhY3RfY29tcGF0LnNoKSBkb2VzIHRoZSBmb2xsb3dpbmc6CsKg IMKgIAoxLiBJbml0aWFsaXplIHByaW1hcnksIGNyZWF0ZSB0ZXN0IHRhYmxlCjIuIEdlbmVyYXRl IG11bHRpeGFjdHMgdW50aWwgbmV4dE11bHRpJ3MgZW50cnkgaXMgZXhhY3RseSAyMDQ3CiDCoCAo bGFzdCBlbnRyeSBvbiBwYWdlIFApCjMuIHBnX2Jhc2ViYWNrdXAgdG8gY3JlYXRlIHN0YW5kYnks IHN0YXJ0IHdpdGggcGdfbmV3ICgxNi4xMyksCiDCoCBjaGVja3BvaW50X3RpbWVvdXQ9MzBzCjQu IFNlc3Npb24gQTogQkVHSU47IFNFTEVDVCAqIEZST00gdCBXSEVSRSBpZD0xIEZPUiBTSEFSRTsK IMKgIChkaXJ0aWVzIGhlYXAgYnVmZmVyKQo1LiBDSEVDS1BPSU5UIHRvIGZsdXNoIHRoZSBkaXJ0 eSBidWZmZXIgKCopCjYuIEVuYWJsZSBzbGVlcCBpbmplY3Rpb24gKHRvdWNoIC90bXAvbXhhY3Rf c2xlZXBfZW5hYmxlZCkKNy4gU2Vzc2lvbiBCOiBTRUxFQ1QgKiBGUk9NIHQgV0hFUkUgaWQ9MSBG T1IgU0hBUkU7CiDCoCAtPiBjcmVhdGVzIG11bHRpeGFjdCBOLCBHZXROZXdNdWx0aVhhY3RJZCBh ZHZhbmNlcyBuZXh0TVhhY3QKIMKgIMKgIHRvIE4rMSwgdGhlbiBzbGVlcHMgNjBzCjguIER1cmlu ZyBzbGVlcDogQ0hFQ0tQT0lOVCBvbiBwcmltYXJ5CiDCoCAtPiBjb21wbGV0ZXMgaW5zdGFudGx5 IChidWZmZXIgaXMgY2xlYW4pCiDCoCAtPiBjYXB0dXJlcyBuZXh0TXVsdGk9TisxIGluIGNoZWNr cG9pbnQgcmVjb3JkCjkuIFdhaXQgZm9yIHN0YW5kYnkgdG8gcmVwbGF5IGNoZWNrcG9pbnQgYW5k IGRvIHJlc3RhcnRwb2ludAoxMC4gQ3Jhc2ggc3RhbmRieSAocGdfY3RsIC1tIGltbWVkaWF0ZSBz dG9wKQoxMS4gV2FpdCBmb3Igc2xlZXAgdG8gZW5kIC0+IENSRUFURV9JRDpOIHdyaXR0ZW4gdG8g V0FMCjEyLiBSZXN0YXJ0IHN0YW5kYnkgLT4gRkFUQUwKwqAgwqAgClRoZSBDSEVDS1BPSU5UIGlu IHN0ZXAgNSBpcyBlc3NlbnRpYWwuIFdpdGhvdXQgaXQsIHRoZSBjaGVja3BvaW50CmluIHN0ZXAg OCBibG9ja3MgYmVjYXVzZSBoZWFwX2xvY2tfdHVwbGUgaG9sZHMgdGhlIGJ1ZmZlciBjb250ZW50 CmxvY2sgaW4gRVhDTFVTSVZFIG1vZGUgYWNyb3NzIHRoZSBlbnRpcmUgTXVsdGlYYWN0SWRDcmVh dGVGcm9tTWVtYmVycwpjYWxsIChpbmNsdWRpbmcgdGhlIHNsZWVwKS4gU2Vzc2lvbiBBJ3MgRk9S IFNIQVJFIGRpcnRpZWQgdGhlIGhlYXAKYnVmZmVyLCBzbyBCdWZmZXJTeW5jIG5lZWRzIExXX1NI QVJFRCBvbiB0aGUgY29udGVudCBsb2NrIGFuZCBibG9ja3MuClRoZSBpbnRlcm1lZGlhdGUgQ0hF Q0tQT0lOVCBmbHVzaGVzIHRoZSBkaXJ0eSBidWZmZXIgYmVmb3JlIFNlc3Npb24gQgphY3F1aXJl cyB0aGUgY29udGVudCBsb2NrLgrCoCDCoCAKUmVzdWx0OgrCoCDCoCAKPiBERUJVRzrCoCBuZXh0 IE11bHRpWGFjdElkOiAxMTQ2ODg7IG5leHQgTXVsdGlYYWN0T2Zmc2V0OiA2ODgyMzMKPiBGQVRB TDrCoCBjb3VsZCBub3QgYWNjZXNzIHN0YXR1cyBvZiB0cmFuc2FjdGlvbiAxMTQ2ODgKPiBERVRB SUw6wqAgQ291bGQgbm90IHJlYWQgZnJvbSBmaWxlICJwZ19tdWx0aXhhY3Qvb2Zmc2V0cy8wMDAx Igo+wqAgwqAgwqAgwqAgwqAgYXQgb2Zmc2V0IDE5NjYwODogcmVhZCB0b28gZmV3IGJ5dGVzLgo+ IENPTlRFWFQ6wqAgV0FMIHJlZG8gYXQgMC80MDQyNkUwIGZvciBNdWx0aVhhY3QvQ1JFQVRFX0lE OiAxMTQ2ODcKPiDCoCDCoCDCoCDCoCDCoCBvZmZzZXQgNjg4MjMxIG5tZW1iZXJzIDI6IDExNjcz NSAoc2gpIDExNjczNiAoc2gpCsKgIMKgIAo9PSBGaXggaWRlYXMgPT0KwqAgwqAgCkkgaGF2ZSB0 d28gaWRlYXMgZm9yIGZpeGluZyB0aGlzLiBUd28gaW5kZXBlbmRlbnQgcGF0Y2hlcyBhcmUKYXR0 YWNoZWQuCsKgIMKgIApJZGVhIDEgKDAwMDEtRml4LW11bHRpeGFjdC1jb21wYXQtbG9naWMtdmlh LXVuY29uZGl0aW9uYWwtemVyby5wYXRjaCk6CsKgIMKgIApSZW1vdmUgdGhlICJsYXRlc3RfcGFn ZV9udW1iZXIgPT0gcGFnZW5vIiBjb25kaXRpb24gZW50aXJlbHkuIER1cmluZwpyZWNvdmVyeSwg d2hlbmV2ZXIgd2UgY3Jvc3MgYSBwYWdlIGJvdW5kYXJ5IGluIFJlY29yZE5ld011bHRpWGFjdCgp LAp1bmNvbmRpdGlvbmFsbHkgZW5zdXJlIHRoZSBuZXh0IHBhZ2UgaXMgaW5pdGlhbGl6ZWQgdmlh ClNpbXBsZUxydVplcm9QYWdlKCkuCsKgIMKgIApQcm86IE1pbmltYWwgY2hhbmdlLCBlYXN5IHRv IHJldmlldywgaW1wb3NzaWJsZSB0byBtaXNzIGFueSBlZGdlCmNhc2Ugc2luY2Ugd2UgYWx3YXlz IGluaXRpYWxpemUuIFNhZmUgYmVjYXVzZSBTaW1wbGVMcnVaZXJvUGFnZSBpcwppZGVtcG90ZW50 IC0tIGF0IHRoaXMgcG9pbnQgdGhlIG5leHQgcGFnZSBvbmx5IGNvbnRhaW5zIHplcm9zCihDUkVB VEVfSUQgcmVjb3JkcyBmb3IgdGhhdCBwYWdlIGhhdmVuJ3QgYmVlbiByZXBsYXllZCB5ZXQpLCBz bwpyZS16ZXJvaW5nIGxvc2VzIG5vdGhpbmcuCsKgIMKgIApDb246IFdoZW4gcmVwbGF5aW5nIFdB TCBmcm9tIGEgbmV3LXZlcnNpb24gcHJpbWFyeSAod2hlcmUKWkVST19PRkZfUEFHRSBpcyBlbWl0 dGVkIEJFRk9SRSBDUkVBVEVfSUQpLCB0aGUgcGFnZSBoYXMgYWxyZWFkeQpiZWVuIGluaXRpYWxp emVkIGJ5IHRoZSBaRVJPX09GRl9QQUdFIHJlY29yZC4gVGhpcyBwYXRjaCB3aWxsCnJlZHVuZGFu dGx5IHplcm8rd3JpdGUgaXQgYWdhaW4uIFRoZSBjb3N0IGlzIG9uZSBleHRyYQpTaW1wbGVMcnVa ZXJvUGFnZSArIFNpbXBsZUxydVdyaXRlUGFnZSBwZXIgMjA0OCBtdWx0aXhhY3RzIGR1cmluZwpy ZWNvdmVyeSwgd2hpY2ggaXMgbmVnbGlnaWJsZSBpbiBwcmFjdGljZSwgYnV0IG5vdCB6ZXJvLgrC oCDCoCAKSWRlYSAyICgwMDAyLUZpeC1tdWx0aXhhY3QtY29tcGF0LWxvZ2ljLXZpYS1TTFJVLWJ1 ZmZlci1jaGVjay5wYXRjaCk6CsKgIMKgIApBbHNvIHJlbW92ZSB0aGUgImxhdGVzdF9wYWdlX251 bWJlciA9PSBwYWdlbm8iIGNvbmRpdGlvbiwgYnV0IGFkZCBhCnR3by10aWVyIGNoZWNrOiBmaXJz dCwgaWYgbGF0ZXN0X3BhZ2VfbnVtYmVyID09IHBhZ2VubyAoZmFzdCBwYXRoKSwKd2Uga25vdyB0 aGUgbmV4dCBwYWdlIG5lZWRzIGluaXRpYWxpemF0aW9uLiBPdGhlcndpc2UsIHNjYW4gdGhlIFNM UlUKYnVmZmVyIHNsb3RzIHRvIGNoZWNrIGlmIHRoZSBuZXh0IHBhZ2UgYWxyZWFkeSBleGlzdHMg KGUuZy4gZnJvbSBhCnByaW9yIFpFUk9fT0ZGX1BBR0UgcmVwbGF5KS4gT25seSBpbml0aWFsaXpl IGlmIHRoZSBwYWdlIGlzIG5vdApmb3VuZCBpbiB0aGUgYnVmZmVyLgrCoCDCoCAKUHJvOiBBdm9p ZHMgdGhlIHJlZHVuZGFudCB6ZXJvK3dyaXRlIHdoZW4gcmVwbGF5aW5nIG5ldy12ZXJzaW9uIFdB TAp3aGVyZSBaRVJPX09GRl9QQUdFIGhhcyBhbHJlYWR5IGJlZW4gcmVwbGF5ZWQgYmVmb3JlIENS RUFURV9JRC4gVGhlClNMUlUgYnVmZmVyIHNjYW4gaXMgTyhuX2J1ZmZlcnMpIHdoaWNoIGlzIGNo ZWFwIChkZWZhdWx0IDggYnVmZmVycykuCsKgIMKgIApDb246IE1vcmUgY29tcGxleCB0aGFuIElk ZWEgMS4gVGhlIFNMUlUgYnVmZmVyIGNoZWNrIGlzIGEgaGV1cmlzdGljCi0tIGlmIHRoZSBwYWdl IHdhcyB3cml0dGVuIG91dCBhbmQgZXZpY3RlZCBmcm9tIHRoZSBidWZmZXIgcG9vbApiZWZvcmUg Q1JFQVRFX0lEIHJlcGxheSwgd2UnZCB6ZXJvIGl0IGFnYWluIChzdGlsbCBzYWZlLCBqdXN0CnJl ZHVuZGFudCkuIEFsc28gaW50cm9kdWNlcyBhIGRlcGVuZGVuY3kgb24gU0xSVSBidWZmZXIgcG9v bAppbnRlcm5hbHMuCsKgIMKgIApJJ2QgYXBwcmVjaWF0ZSBpdCBpZiBzb21lb25lIGNvdWxkIHJl dmlldyB3aGV0aGVyIG15IGFuYWx5c2lzIG9mIHRoZQpidWcgaXMgY29ycmVjdC4gSWYgaXQgaXMs IEknZCBiZSBoYXBweSB0byBoZWFyIGFueSB0aG91Z2h0cyBvbiB0aGUKcGF0Y2hlcyBvciBiZXR0 ZXIgYXBwcm9hY2hlcyB0byBmaXggdGhpcy4KwqAgwqAgClJlZ2FyZHMsCkR1YW4KCg== ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f Content-Type: application/octet-stream Content-Disposition: attachment; filename="=?UTF-8?B?c2xlZXAtaW5qZWN0aW9uLWZvci1tdWx0aXhhY3QtY29tcGF0LWxvZ2ljLWJ1Zy1yZXByby5wYXRjaA==?=" Content-Transfer-Encoding: base64 RnJvbSA5Y2FhOGZjOGExMGFkNjVmZTBmMWZiNWVjOWE2YzNlNDI2NjhkOWY2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiZHVhbmt1bnJlbi5ka3IiIDxkdWFua3VucmVuLmRrckBhbGli YWJhLWluYy5jb20+CkRhdGU6IFRodSwgMTkgTWFyIDIwMjYgMjM6MTk6MTkgKzA4MDAKU3ViamVj dDogW1BBVENIXSBTbGVlcCBpbmplY3Rpb24gZm9yIG11bHRpeGFjdCBjb21wYXQgbG9naWMgYnVn IHJlcHJvZHVjdGlvbgoKSW5qZWN0IGEgNjBzIHNsZWVwIGluIE11bHRpWGFjdElkQ3JlYXRlRnJv bU1lbWJlcnMoKSBiZXR3ZWVuCkdldE5ld011bHRpWGFjdElkKCkgYW5kIFhMb2dJbnNlcnQoQ1JF QVRFX0lEKSwgdHJpZ2dlcmVkIHdoZW4KdGhlIGFsbG9jYXRlZCBtdWx0aSBpcyB0aGUgbGFzdCBl bnRyeSBvbiBhbiBvZmZzZXQgcGFnZSAoZW50cnkgMjA0NykuCgpUaGlzIGNyZWF0ZXMgYSBkZXRl cm1pbmlzdGljIHdpbmRvdyB3aGVyZSBDSEVDS1BPSU5UIGNhbiBjYXB0dXJlCm5leHRNdWx0aT1O KzEgd2hpbGUgQ1JFQVRFX0lEOk4gaGFzIG5vdCB5ZXQgYmVlbiB3cml0dGVuIHRvIFdBTCwKcmVw cm9kdWNpbmcgdGhlIFdBTCBkaXNvcmRlciB0aGF0IHRyaWdnZXJzIHRoZSBjb21wYXQgbG9naWMg YnVnCmluIGNvbW1pdCA4YmE2MWJjMDYzOC4KCkFwcGx5IHRvIFJFTF8xNl8xMSAob3IgYW55IHVu cGF0Y2hlZCBtaW5vciB2ZXJzaW9uKSB0byBidWlsZCB0aGUKcHJpbWFyeSBmb3IgdGhlIHJlcHJv ZHVjdGlvbiB0ZXN0LgotLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5j IHwgMTUgKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTUgaW5zZXJ0aW9ucygrKQoK ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIGIvc3Jj L2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMKaW5kZXggM2EyZDcwNTVjNDIuLmNi M2Y4ZjIwN2FlIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhh Y3QuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3QuYwpAQCAtODIy LDYgKzgyMiwyMSBAQCBNdWx0aVhhY3RJZENyZWF0ZUZyb21NZW1iZXJzKGludCBubWVtYmVycywg TXVsdGlYYWN0TWVtYmVyICptZW1iZXJzKQogCSAqLwogCW11bHRpID0gR2V0TmV3TXVsdGlYYWN0 SWQobm1lbWJlcnMsICZvZmZzZXQpOwogCisKKwkvKgorCSAqIEJVRyBSRVBST0RVQ1RJT046IFNs ZWVwIDYwcyBiZWZvcmUgd3JpdGluZyBDUkVBVEVfSUQgV0FMIHdoZW4KKwkgKiB0aGlzIG11bHRp IGlzIHRoZSBsYXN0IGVudHJ5IG9uIGl0cyBvZmZzZXQgcGFnZSAoZW50cnkgMjA0NykuCisJICog T25seSBhY3RpdmF0ZXMgd2hlbiAvdG1wL214YWN0X3NsZWVwX2VuYWJsZWQgZXhpc3RzLCBzbyB0 aGUKKwkgKiBiYXRjaCBwaGFzZSBjYW4gYWR2YW5jZSBtdWx0aXhhY3RzIHdpdGhvdXQgaGl0dGlu ZyB0aGUgc2xlZXAuCisJICovCisJaWYgKE11bHRpWGFjdElkVG9PZmZzZXRFbnRyeShtdWx0aSkg PT0gTVVMVElYQUNUX09GRlNFVFNfUEVSX1BBR0UgLSAxICYmCisJCWFjY2VzcygiL3RtcC9teGFj dF9zbGVlcF9lbmFibGVkIiwgRl9PSykgPT0gMCkKKwl7CisJCWVsb2coTE9HLCAiTVhBQ1RfREVM QVk6IG11bHRpPSV1IGlzIGxhc3QgZW50cnkgb24gcGFnZSAlZCwgc2xlZXBpbmcgNjBzIiwKKwkJ CSBtdWx0aSwgTXVsdGlYYWN0SWRUb09mZnNldFBhZ2UobXVsdGkpKTsKKwkJcGdfdXNsZWVwKDYw MDAwMDAwTCk7CisJCWVsb2coTE9HLCAiTVhBQ1RfREVMQVk6IG11bHRpPSV1IHdva2UgdXAsIHdy aXRpbmcgQ1JFQVRFX0lEIG5vdyIsIG11bHRpKTsKKwl9CiAJLyogTWFrZSBhbiBYTE9HIGVudHJ5 IGRlc2NyaWJpbmcgdGhlIG5ldyBNWElELiAqLwogCXhscmVjLm1pZCA9IG11bHRpOwogCXhscmVj Lm1vZmYgPSBvZmZzZXQ7Ci0tIAoyLjMyLjAuMy5nMDExOTVjZjlmCgo= ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f Content-Type: application/octet-stream Content-Disposition: attachment; filename="=?UTF-8?B?dGVzdF9tdWx0aXhhY3RfY29tcGF0LnNo?=" Content-Transfer-Encoding: base64 IyEvYmluL2Jhc2gKIyBEZXRlcm1pbmlzdGljIHJlcHJvZHVjdGlvbjogbXVsdGl4YWN0IGNvbXBh dCBsb2dpYyBjcmFzaC1yZXN0YXJ0IGJ1ZwojCiMgUHJpbWFyeTogcGdfb2xkICgxNi4xMSB3aXRo IHNsZWVwIGluamVjdGlvbiBpbiBNdWx0aVhhY3RJZENyZWF0ZUZyb21NZW1iZXJzKQojICAgU2xl ZXAgNjBzIGFmdGVyIEdldE5ld011bHRpWGFjdElkKCkgYnV0IGJlZm9yZSBYTG9nSW5zZXJ0KENS RUFURV9JRDpOKSwKIyAgIG9ubHkgd2hlbiBtdWx0aSBOIGlzIGxhc3QgZW50cnkgb24gb2Zmc2V0 IHBhZ2UgKGVudHJ5IDIwNDcpLgojCiMgU3RhbmRieTogcGdfbmV3ICgxNi4xMykKIwojIFRoZSBz bGVlcCBjcmVhdGVzIGEgd2luZG93IHdoZXJlIENIRUNLUE9JTlQgY2FwdHVyZXMgbmV4dE1YYWN0 PU4rMQojIGJ1dCBDUkVBVEVfSUQ6TiBoYXNuJ3QgYmVlbiB3cml0dGVuIHRvIFdBTCB5ZXQuIEFm dGVyIHN0YW5kYnkKIyBjcmFzaC1yZXN0YXJ0LCBTdGFydHVwTXVsdGlYYWN0IHNldHMgbGF0ZXN0 X3BhZ2VfbnVtYmVyPXBhZ2UoTisxKSwKIyBjYXVzaW5nIHRoZSBjb21wYXQgbG9naWMgdG8gc2tp cCBwYWdlIGluaXRpYWxpemF0aW9uIC0+IEZBVEFMLgojCgpzZXQgLWV1byBwaXBlZmFpbAoKUEdf T0xEPS9ob21lL3Bvc3RncmVzL3BnX29sZApQR19ORVc9L2hvbWUvcG9zdGdyZXMvcGdfbmV3ClRF U1RESVI9L2hvbWUvcG9zdGdyZXMvdGVzdF9teGFjdApQUklNQVJZX0RBVEE9JFRFU1RESVIvcHJp bWFyeQpTVEFOREJZX0RBVEE9JFRFU1RESVIvc3RhbmRieQpQUklNQVJZX1BPUlQ9MTU0MzIKU1RB TkRCWV9QT1JUPTE1NDMzClBSSU1BUllfTE9HPSRURVNURElSL3ByaW1hcnkubG9nClNUQU5EQllf TE9HPSRURVNURElSL3N0YW5kYnkubG9nCgpwZ19vbGQoKSB7IExEX0xJQlJBUllfUEFUSD0kUEdf T0xEL2xpYiAiJFBHX09MRC9iaW4vJEAiOyB9CnBnX25ldygpIHsgTERfTElCUkFSWV9QQVRIPSRQ R19ORVcvbGliICIkUEdfTkVXL2Jpbi8kQCI7IH0KcHNxbF9wcmkoKSB7IExEX0xJQlJBUllfUEFU SD0kUEdfT0xEL2xpYiAkUEdfT0xEL2Jpbi9wc3FsIC1wICRQUklNQVJZX1BPUlQgLWQgcG9zdGdy ZXMgIiRAIjsgfQpwc3FsX3N0YigpIHsgTERfTElCUkFSWV9QQVRIPSRQR19ORVcvbGliICRQR19O RVcvYmluL3BzcWwgLXAgJFNUQU5EQllfUE9SVCAtZCBwb3N0Z3JlcyAiJEAiOyB9CgpjbGVhbnVw KCkgewogICAgcm0gLWYgL3RtcC9teGFjdF9zbGVlcF9lbmFibGVkIDI+L2Rldi9udWxsIHx8IHRy dWUKICAgIGZvciBmIGluICRURVNURElSL2ZpZm9fKjsgZG8gZWNobyAiXFxxIiA+ICIkZiIgMj4v ZGV2L251bGwgfHwgdHJ1ZTsgZG9uZQogICAga2lsbCAkKGpvYnMgLXApIDI+L2Rldi9udWxsIHx8 IHRydWUKICAgIHNsZWVwIDEKICAgIHJtIC1mICRURVNURElSL2ZpZm9fKiAyPi9kZXYvbnVsbCB8 fCB0cnVlCiAgICBMRF9MSUJSQVJZX1BBVEg9JFBHX09MRC9saWIgJFBHX09MRC9iaW4vcGdfY3Rs IC1EICIkUFJJTUFSWV9EQVRBIiAtbSBpbW1lZGlhdGUgc3RvcCAyPi9kZXYvbnVsbCB8fCB0cnVl CiAgICBMRF9MSUJSQVJZX1BBVEg9JFBHX05FVy9saWIgJFBHX05FVy9iaW4vcGdfY3RsIC1EICIk U1RBTkRCWV9EQVRBIiAtbSBpbW1lZGlhdGUgc3RvcCAyPi9kZXYvbnVsbCB8fCB0cnVlCn0KdHJh cCBjbGVhbnVwIEVYSVQKCndhaXRfc3RhbmRieV9jYXRjaHVwKCkgewogICAgbG9jYWwgdGltZW91 dD0kezE6LTEyMH0KICAgIGZvciBpIGluICQoc2VxIDEgJHRpbWVvdXQpOyBkbwogICAgICAgIGxv Y2FsIHA9JChwc3FsX3ByaSAtdEFjICJTRUxFQ1QgcGdfY3VycmVudF93YWxfbHNuKCkiIDI+L2Rl di9udWxsKSB8fCBjb250aW51ZQogICAgICAgIGxvY2FsIHM9JChwc3FsX3N0YiAtdEFjICJTRUxF Q1QgcGdfbGFzdF93YWxfcmVwbGF5X2xzbigpIiAyPi9kZXYvbnVsbCkgfHwgY29udGludWUKICAg ICAgICBbIC1uICIkcyIgXSAmJiBbICIkcyIgPSAiJHAiIF0gJiYgcmV0dXJuIDAKICAgICAgICBz bGVlcCAxCiAgICBkb25lCiAgICByZXR1cm4gMQp9CgpybSAtcmYgJFRFU1RESVIgJiYgbWtkaXIg LXAgJFRFU1RESVIKcm0gLWYgL3RtcC9teGFjdF9zbGVlcF9lbmFibGVkIDI+L2Rldi9udWxsIHx8 IHRydWUKCmVjaG8gIj09PSBNdWx0aXhhY3QgY29tcGF0IGxvZ2ljIGNyYXNoLXJlc3RhcnQgYnVn IHJlcHJvID09PSIKZWNobyAiICBQcmltYXJ5OiBwZ19vbGQgMTYuMTEgKHNsZWVwIGluamVjdGlv biksIFN0YW5kYnk6IHBnX25ldyAxNi4xMyIKZWNobyAiIgoKIyA9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KIyBTdGVwIDE6IEluaXRp YWxpemUgcHJpbWFyeQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQplY2hvICItLS0gU3RlcCAxOiBJbml0IHByaW1hcnkgKHBnX29s ZCAxNi4xMSB3aXRoIHNsZWVwIGluamVjdGlvbikiCgpwZ19vbGQgaW5pdGRiIC1EICIkUFJJTUFS WV9EQVRBIiAtLW5vLWxvY2FsZSAtRSBVVEY4ID4gL2Rldi9udWxsCgpjYXQgPj4gIiRQUklNQVJZ X0RBVEEvcG9zdGdyZXNxbC5jb25mIiA8PEVPRgpwb3J0ID0gJFBSSU1BUllfUE9SVAp3YWxfbGV2 ZWwgPSByZXBsaWNhCm1heF93YWxfc2VuZGVycyA9IDUKaG90X3N0YW5kYnkgPSBvbgpjaGVja3Bv aW50X3RpbWVvdXQgPSA2MDAKbG9nX21pbl9tZXNzYWdlcyA9IGRlYnVnMQpsb2dnaW5nX2NvbGxl Y3RvciA9IG9uCmxvZ19kaXJlY3RvcnkgPSAnJFRFU1RESVInCmxvZ19maWxlbmFtZSA9ICdwcmlt YXJ5LmxvZycKRU9GCgpjYXQgPj4gIiRQUklNQVJZX0RBVEEvcGdfaGJhLmNvbmYiIDw8RU9GCmxv Y2FsICAgcmVwbGljYXRpb24gICAgIGFsbCAgICAgICAgICAgICAgICAgICAgIHRydXN0Cmhvc3Qg ICAgcmVwbGljYXRpb24gICAgIGFsbCAgICAgMTI3LjAuMC4xLzMyICAgIHRydXN0CkVPRgoKcGdf b2xkIHBnX2N0bCAtRCAiJFBSSU1BUllfREFUQSIgLWwgIiRQUklNQVJZX0xPRyIgc3RhcnQKc2xl ZXAgMgoKcHNxbF9wcmkgLWMgIkNSRUFURSBUQUJMRSB0KGlkIGludCBQUklNQVJZIEtFWSk7IElO U0VSVCBJTlRPIHQgU0VMRUNUIGdlbmVyYXRlX3NlcmllcygxLDEwKTsiCnBzcWxfcHJpIC1jICJT RUxFQ1QgcGdfY3JlYXRlX3BoeXNpY2FsX3JlcGxpY2F0aW9uX3Nsb3QoJ3N0YW5kYnlfc2xvdCcp OyIKCmVjaG8gIiAgUHJpbWFyeSBydW5uaW5nIG9uIHBvcnQgJFBSSU1BUllfUE9SVCIKZWNobyAi IgoKIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0KIyBTdGVwIDI6IEdlbmVyYXRlIG11bHRpeGFjdHMgdW50aWwgZW50cnkgPSAyMDQ3 CiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09CmVjaG8gIi0tLSBTdGVwIDI6IEdlbmVyYXRlIG11bHRpeGFjdHMgdW50aWwgbmV4dE11 bHRpIGVudHJ5ID0gMjA0NyIKCmdldF9uZXh0X211bHRpKCkgewogICAgcHNxbF9wcmkgLXRBYyAi U0VMRUNUIG5leHRfbXVsdGl4YWN0X2lkIEZST00gcGdfY29udHJvbF9jaGVja3BvaW50KCkiIDI+ L2Rldi9udWxsCn0KCmdldF9lbnRyeSgpIHsKICAgIGxvY2FsIG09JDEKICAgIGVjaG8gJCgoIG0g JSAyMDQ4ICkpCn0KCiMgQmF0Y2ggcGhhc2U6IHBnYmVuY2ggdG8gcHVzaCBtdWx0aXhhY3RzIGZv cndhcmQgcXVpY2tseQpjYXQgPiAiJFRFU1RESVIvbXhhY3Quc3FsIiA8PCdTUUwnCkJFR0lOOwpT RUxFQ1QgKiBGUk9NIHQgV0hFUkUgaWQgPSAxIEZPUiBTSEFSRTsKU0VMRUNUICogRlJPTSB0IFdI RVJFIGlkID0gMSBGT1IgU0hBUkU7CkNPTU1JVDsKU1FMCgpORVhUPSQoZ2V0X25leHRfbXVsdGkp CkVOVFJZPSQoZ2V0X2VudHJ5ICRORVhUKQplY2hvICIgIEN1cnJlbnQ6IG5leHRNdWx0aT0kTkVY VCwgZW50cnk9JEVOVFJZIgoKd2hpbGUgdHJ1ZTsgZG8KICAgIEVOVFJZPSQoZ2V0X2VudHJ5ICQo Z2V0X25leHRfbXVsdGkpKQogICAgaWYgWyAiJEVOVFJZIiAtZ2UgMjA0MCBdOyB0aGVuCiAgICAg ICAgYnJlYWsKICAgIGZpCiAgICBMRF9MSUJSQVJZX1BBVEg9JFBHX09MRC9saWIgJFBHX09MRC9i aW4vcGdiZW5jaCAtcCAkUFJJTUFSWV9QT1JUIC1kIHBvc3RncmVzIFwKICAgICAgICAtbiAtZiAi JFRFU1RESVIvbXhhY3Quc3FsIiAtYyAxMCAtdCA1MCA+IC9kZXYvbnVsbCAyPiYxCiAgICBwc3Fs X3ByaSAtYyAiQ0hFQ0tQT0lOVCIgPiAvZGV2L251bGwgMj4mMQpkb25lCgojIEZpbmUtdHVuZTog cGdiZW5jaCAtYyAyIC10IDEgdG8gYWR2YW5jZSBvbmUgbXVsdGl4YWN0IGF0IGEgdGltZQp3aGls ZSB0cnVlOyBkbwogICAgTkVYVD0kKGdldF9uZXh0X211bHRpKQogICAgRU5UUlk9JChnZXRfZW50 cnkgJE5FWFQpCiAgICBlY2hvICIgIG5leHRNdWx0aT0kTkVYVCwgZW50cnk9JEVOVFJZIgogICAg aWYgWyAiJEVOVFJZIiAtZXEgMjA0NyBdOyB0aGVuCiAgICAgICAgYnJlYWsKICAgIGZpCiAgICBM RF9MSUJSQVJZX1BBVEg9JFBHX09MRC9saWIgJFBHX09MRC9iaW4vcGdiZW5jaCAtcCAkUFJJTUFS WV9QT1JUIC1kIHBvc3RncmVzIFwKICAgICAgICAtbiAtZiAiJFRFU1RESVIvbXhhY3Quc3FsIiAt YyAyIC10IDEgPiAvZGV2L251bGwgMj4mMQogICAgcHNxbF9wcmkgLWMgIkNIRUNLUE9JTlQiID4g L2Rldi9udWxsIDI+JjEKZG9uZQoKTkVYVD0kKGdldF9uZXh0X211bHRpKQpFTlRSWT0kKGdldF9l bnRyeSAkTkVYVCkKZWNobyAiICBSZWFkeTogbmV4dE11bHRpPSRORVhULCBlbnRyeT0kRU5UUlkg KGxhc3QgZW50cnkgb24gcGFnZSkiCmVjaG8gIiIKCiMgPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgU3RlcCAzOiBDcmVhdGUgc3Rh bmRieSB2aWEgcGdfYmFzZWJhY2t1cAojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQplY2hvICItLS0gU3RlcCAzOiBDcmVhdGUgc3Rh bmRieSAocGdfbmV3IDE2LjEzIHdpdGggY29tcGF0IGxvZ2ljKSIKCnBnX29sZCBwZ19iYXNlYmFj a3VwIC1EICIkU1RBTkRCWV9EQVRBIiAtcCAkUFJJTUFSWV9QT1JUIC1GcCAtWHMgLVIgLWMgZmFz dCAtUyBzdGFuZGJ5X3Nsb3QKCmNhdCA+PiAiJFNUQU5EQllfREFUQS9wb3N0Z3Jlc3FsLmNvbmYi IDw8RU9GCnBvcnQgPSAkU1RBTkRCWV9QT1JUCmhvdF9zdGFuZGJ5ID0gb24KY2hlY2twb2ludF90 aW1lb3V0ID0gMzAKbG9nX21pbl9tZXNzYWdlcyA9IGRlYnVnMQpsb2dnaW5nX2NvbGxlY3RvciA9 IG9uCmxvZ19kaXJlY3RvcnkgPSAnJFRFU1RESVInCmxvZ19maWxlbmFtZSA9ICdzdGFuZGJ5Lmxv ZycKRU9GCgpwZ19uZXcgcGdfY3RsIC1EICIkU1RBTkRCWV9EQVRBIiAtbCAiJFNUQU5EQllfTE9H IiBzdGFydApzbGVlcCAyCgplY2hvICIgIFdhaXRpbmcgZm9yIHN0YW5kYnkgdG8gY2F0Y2ggdXAu Li4iCndhaXRfc3RhbmRieV9jYXRjaHVwIDYwCmVjaG8gIiAgU3RhbmRieSBjYXVnaHQgdXAiCgoj IFdhaXQgZm9yIHN0YW5kYnkgdG8gZG8gYSByZXN0YXJ0cG9pbnQgKGNoZWNrcG9pbnRfdGltZW91 dD0zMHMpCmVjaG8gIiAgV2FpdGluZyA0MHMgZm9yIHN0YW5kYnkgcmVzdGFydHBvaW50Li4uIgpz bGVlcCA0MAplY2hvICIiCgojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQojIFN0ZXAgNDogVHJpZ2dlciBXQUwgZGlzb3JkZXIKIyA9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT0KZWNobyAiLS0tIFN0ZXAgNDogVHJpZ2dlciBXQUwgZGlzb3JkZXIgdmlhIHNsZWVwIGluamVj dGlvbiIKCiMgU2Vzc2lvbiBBOiBkaXJ0eSB0aGUgaGVhcCBidWZmZXIKRklGT19BPSRURVNURElS L2ZpZm9fYQpta2ZpZm8gIiRGSUZPX0EiCih0YWlsIC1mICIkRklGT19BIiB8IHBzcWxfcHJpIC12 IE9OX0VSUk9SX1NUT1A9MSA+IC9kZXYvbnVsbCAyPiYxKSAmClBJREE9JCEKZWNobyAiQkVHSU47 IFNFTEVDVCAqIEZST00gdCBXSEVSRSBpZD0xIEZPUiBTSEFSRTsiID4gIiRGSUZPX0EiCnNsZWVw IDIKCiMgRmx1c2ggdGhlIGRpcnR5IGJ1ZmZlciBzbyBjaGVja3BvaW50IGR1cmluZyBzbGVlcCB3 b24ndCBibG9jawpwc3FsX3ByaSAtYyAiQ0hFQ0tQT0lOVCIgPiAvZGV2L251bGwgMj4mMQplY2hv ICIgIEludGVybWVkaWF0ZSBDSEVDS1BPSU5UIGRvbmUgKGZsdXNoZWQgZGlydHkgYnVmZmVyKSIK c2xlZXAgMQoKIyBTZXNzaW9uIEI6IHRyaWdnZXIgbXVsdGl4YWN0IGNyZWF0aW9uIC0+IDYwcyBz bGVlcAojIEVuYWJsZSBzbGVlcCBpbmplY3Rpb24gbm93IChmaWxlIHN3aXRjaCkKdG91Y2ggL3Rt cC9teGFjdF9zbGVlcF9lbmFibGVkCkZJRk9fQj0kVEVTVERJUi9maWZvX2IKbWtmaWZvICIkRklG T19CIgoodGFpbCAtZiAiJEZJRk9fQiIgfCBwc3FsX3ByaSAtdiBPTl9FUlJPUl9TVE9QPTEgPiAv ZGV2L251bGwgMj4mMSkgJgpQSURCPSQhCmVjaG8gIlNFTEVDVCAqIEZST00gdCBXSEVSRSBpZD0x IEZPUiBTSEFSRTsiID4gIiRGSUZPX0IiCnNsZWVwIDMKCmVjaG8gIiAgU2Vzc2lvbiBCIHRyaWdn ZXJlZCBtdWx0aXhhY3QgY3JlYXRpb24gKHNsZWVwaW5nIDYwcyBpbiBiYWNrZW5kKSIKCiMgQ0hF Q0tQT0lOVCBkdXJpbmcgc2xlZXAgd2luZG93CnBzcWxfcHJpIC1jICJDSEVDS1BPSU5UIiA+IC9k ZXYvbnVsbCAyPiYxCmVjaG8gIiAgQ0hFQ0tQT0lOVCBkdXJpbmcgc2xlZXAgZG9uZSAoY2FwdHVy ZWQgbmV4dE11bHRpPU4rMSkiCgojIFZlcmlmeSBDUkVBVEVfSUQ6TiBub3QgeWV0IGluIFdBTApO RVhUPSQoZ2V0X25leHRfbXVsdGkpClBSRVY9JCgoTkVYVCAtIDEpKQpXQUxfQ0hFQ0s9IiIKZm9y IHdmIGluICIkUFJJTUFSWV9EQVRBL3BnX3dhbCIvMDAwMDAwMCo7IGRvCiAgICBXQUxfQ0hFQ0s9 JChMRF9MSUJSQVJZX1BBVEg9JFBHX09MRC9saWIgJFBHX09MRC9iaW4vcGdfd2FsZHVtcCAiJHdm IiAtciBNdWx0aVhhY3QgMj4vZGV2L251bGwgfCBncmVwICJDUkVBVEVfSUQgJFBSRVYgIiB8fCB0 cnVlKQogICAgWyAtbiAiJFdBTF9DSEVDSyIgXSAmJiBicmVhawpkb25lCmlmIFsgLXogIiRXQUxf Q0hFQ0siIF07IHRoZW4KICAgIGVjaG8gIiAgQ1JFQVRFX0lEOiRQUkVWIG5vdCBpbiBXQUwgeWV0 IChzbGVlcCBpcyB3b3JraW5nKSIKZWxzZQogICAgZWNobyAiICBXQVJOSU5HOiBDUkVBVEVfSUQ6 JFBSRVYgYWxyZWFkeSBpbiBXQUwsIHNsZWVwIG1heSBub3QgaGF2ZSB0cmlnZ2VyZWQiCmZpCmVj aG8gIiIKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09CiMgU3RlcCA1OiBDcmFzaCBzdGFuZGJ5CiMgPT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CmVjaG8gIi0tLSBTdGVw IDU6IENyYXNoIHN0YW5kYnkgKGltbWVkaWF0ZSBzdG9wKSIKCiMgV2FpdCBmb3Igc3RhbmRieSB0 byByZXBsYXkgdGhlIGNoZWNrcG9pbnQgYW5kIGRvIHJlc3RhcnRwb2ludAplY2hvICIgIFdhaXRp bmcgNDBzIGZvciBzdGFuZGJ5IHRvIHByb2Nlc3MgY2hlY2twb2ludCArIHJlc3RhcnRwb2ludC4u LiIKc2xlZXAgNDAKCnBnX25ldyBwZ19jdGwgLUQgIiRTVEFOREJZX0RBVEEiIC1tIGltbWVkaWF0 ZSBzdG9wCmVjaG8gIiAgU3RhbmRieSBjcmFzaGVkIgoKIyBWZXJpZnkgcGFnZSBQKzEgbm90IG9u IGRpc2sKT0ZGU0VUX0ZJTEU9IiRTVEFOREJZX0RBVEEvcGdfbXVsdGl4YWN0L29mZnNldHMvMDAw MCIKaWYgWyAtZiAiJE9GRlNFVF9GSUxFIiBdOyB0aGVuCiAgICBGU0laRT0kKHN0YXQgLWMlcyAi JE9GRlNFVF9GSUxFIikKICAgIGVjaG8gIiAgT2Zmc2V0IGZpbGUgc2l6ZTogJEZTSVpFIGJ5dGVz IChwYWdlIDEgbmVlZHMgb2Zmc2V0ID49IDE2Mzg0KSIKICAgIGlmIFsgIiRGU0laRSIgLWxlIDgx OTIgXTsgdGhlbgogICAgICAgIGVjaG8gIiAgUGFnZSBQKzEgbm90IG9uIGRpc2sgKGZpbGUgdG9v IHNtYWxsKSIKICAgIGZpCmZpCmVjaG8gIiIKCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgU3RlcCA2OiBXYWl0IGZvciBzbGVl cCB0byBlbmQKIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT0KZWNobyAiLS0tIFN0ZXAgNjogV2FpdCBmb3Igc2xlZXAgdG8gZW5kIGFu ZCBDUkVBVEVfSUQgdG8gYmUgd3JpdHRlbiIKCnNsZWVwIDMwCmVjaG8gIlxccSIgPiAiJEZJRk9f QSIgMj4vZGV2L251bGwgfHwgdHJ1ZQplY2hvICJcXHEiID4gIiRGSUZPX0IiIDI+L2Rldi9udWxs IHx8IHRydWUKc2xlZXAgNQoKIyBWZXJpZnkgQ1JFQVRFX0lEOk4gbm93IGluIFdBTApXQUxfQ0hF Q0s9IiIKZm9yIHdmIGluICIkUFJJTUFSWV9EQVRBL3BnX3dhbCIvMDAwMDAwMCo7IGRvCiAgICBX QUxfQ0hFQ0s9JChMRF9MSUJSQVJZX1BBVEg9JFBHX09MRC9saWIgJFBHX09MRC9iaW4vcGdfd2Fs ZHVtcCAiJHdmIiAtciBNdWx0aVhhY3QgMj4vZGV2L251bGwgfCBncmVwICJDUkVBVEVfSUQgJFBS RVYgIiB8fCB0cnVlKQogICAgWyAtbiAiJFdBTF9DSEVDSyIgXSAmJiBicmVhawpkb25lCmlmIFsg LW4gIiRXQUxfQ0hFQ0siIF07IHRoZW4KICAgIGVjaG8gIiAgQ1JFQVRFX0lEOiRQUkVWIG5vdyBp biBXQUwiCmVsc2UKICAgIGVjaG8gIiAgRVJST1I6IENSRUFURV9JRDokUFJFViBzdGlsbCBub3Qg aW4gV0FMIgogICAgZXhpdCAxCmZpCmVjaG8gIiIKCiMgPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiMgU3RlcCA3OiBSZXN0YXJ0IHN0 YW5kYnkgLT4gZXhwZWN0IEZBVEFMCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09CmVjaG8gIi0tLSBTdGVwIDc6IFJlc3RhcnQgc3Rh bmRieSAoZXhwZWN0IEZBVEFMIHdpdGggYnVnZ3kgY29tcGF0IGxvZ2ljKSIKCnBnX25ldyBwZ19j dGwgLUQgIiRTVEFOREJZX0RBVEEiIC1sICIkU1RBTkRCWV9MT0ciIHN0YXJ0IHx8IHRydWUKc2xl ZXAgNQoKIyBDaGVjayBpZiBzdGFuZGJ5IGlzIHJ1bm5pbmcKaWYgcGdfbmV3IHBnX2N0bCAtRCAi JFNUQU5EQllfREFUQSIgc3RhdHVzID4gL2Rldi9udWxsIDI+JjE7IHRoZW4KICAgIGVjaG8gIiAg U3RhbmRieSBpcyBydW5uaW5nIChmaXggaXMgd29ya2luZyBvciBidWcgbm90IHRyaWdnZXJlZCki CiAgICAjIENoZWNrIGZvciB0aGUgZGVidWcgbWVzc2FnZSBpbmRpY2F0aW5nIGNvbXBhdCBsb2dp YyBmaXJlZAogICAgaWYgZ3JlcCAtcSAibmV4dCBvZmZzZXRzIHBhZ2UgaXMgbm90IGluaXRpYWxp emVkIiAiJFRFU1RESVIvc3RhbmRieS5sb2ciOyB0aGVuCiAgICAgICAgZWNobyAiICBQQVNTOiBj b21wYXQgbG9naWMgaW5pdGlhbGl6ZWQgdGhlIHBhZ2UiCiAgICBmaQplbHNlCiAgICBlY2hvICIg IFN0YW5kYnkgaXMgTk9UIHJ1bm5pbmcgKGNyYXNoZWQpIgogICAgaWYgZ3JlcCAtcSAicmVhZCB0 b28gZmV3IGJ5dGVzIiAiJFRFU1RESVIvc3RhbmRieS5sb2ciOyB0aGVuCiAgICAgICAgZWNobyAi ICBGQUlMOiBGQVRBTCAtIHJlYWQgdG9vIGZldyBieXRlcyAoY29tcGF0IGxvZ2ljIGJ1ZyBjb25m aXJtZWQpIgogICAgICAgIGVjaG8gIiIKICAgICAgICBlY2hvICIgIFJlbGV2YW50IGxvZyBsaW5l czoiCiAgICAgICAgZ3JlcCAtRSAiKEZBVEFMfERFVEFJTHxDT05URVhUfG5leHQgTXVsdGlYYWN0 SWQpIiAiJFRFU1RESVIvc3RhbmRieS5sb2ciIHwgdGFpbCAtMTAKICAgIGZpCmZpCgplY2hvICIi CmVjaG8gIj09PSBEb25lID09PSIK ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f Content-Type: application/octet-stream Content-Disposition: attachment; filename="=?UTF-8?B?MDAwMS1GaXgtbXVsdGl4YWN0LWNvbXBhdC1sb2dpYy12aWEtdW5jb25kaXRpb25hbC16ZXJvLnBhdGNo?=" Content-Transfer-Encoding: base64 RnJvbSAyZWExMGFlMzMzMDIyYjc3NzkwNGUzZTY0ZGE3ZjYyNDg1YTQ0YzkwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiZHVhbmt1bnJlbi5ka3IiIDxkdWFua3VucmVuLmRrckBhbGli YWJhLWluYy5jb20+CkRhdGU6IFRodSwgMTkgTWFyIDIwMjYgMjI6MDc6NTEgKzA4MDAKU3ViamVj dDogW1BBVENIXSBGaXggbXVsdGl4YWN0IGNvbXBhdCBsb2dpYyB2aWEgdW5jb25kaXRpb25hbCB6 ZXJvCgotLS0KIHNyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFjdC5jIHwgMTcgKysr KysrKysrKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL211bHRpeGFj dC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMKaW5kZXggMjZiOGQ0 ZTEyMzAuLmE5YTY0ZDZjOWM0IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNh bS9tdWx0aXhhY3QuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9tdWx0aXhhY3Qu YwpAQCAtODk3LDEwICs4OTcsMjEgQEAgUmVjb3JkTmV3TXVsdGlYYWN0KE11bHRpWGFjdElkIG11 bHRpLCBNdWx0aVhhY3RPZmZzZXQgb2Zmc2V0LAogCSAqIG11bHRpeGlkIHdhcyBhc3NpZ25lZC4g IElmIHdlJ3JlIHJlcGxheWluZyBXQUwgdGhhdCB3YXMgZ2VuZXJhdGVkIGJ5CiAJICogc3VjaCBh IHZlcnNpb24sIHRoZSBuZXh0IHBhZ2UgbWlnaHQgbm90IGJlIGluaXRpYWxpemVkIHlldC4gIElu aXRpYWxpemUKIAkgKiBpdCBub3cuCisJICoKKwkgKiBUaGUgcHJldmlvdXMgY29uZGl0aW9uIGNo ZWNrZWQgbGF0ZXN0X3BhZ2VfbnVtYmVyID09IHBhZ2VubywgYnV0IHRoYXQKKwkgKiBmYWlscyBh ZnRlciBhIGNyYXNoLXJlc3RhcnQ6IFN0YXJ0dXBNdWx0aVhhY3QoKSBzZXRzCisJICogbGF0ZXN0 X3BhZ2VfbnVtYmVyIHRvIHBhZ2UoY2hlY2tQb2ludC5uZXh0TXVsdGkpLCB3aGljaCBjYW4gYmUK KwkgKiBuZXh0X3BhZ2VubyBvciBldmVuIGhpZ2hlciB3aGVuIHRoZSBjaGVja3BvaW50IGNhcHR1 cmVkIGFuIGFkdmFuY2VkCisJICogbmV4dE1YYWN0LiAgSW4gdGhhdCBjYXNlLCB0aGUgPT0gY2hl Y2sgZG9lc24ndCBtYXRjaCBhbmQgd2Ugc2tpcAorCSAqIGluaXRpYWxpemF0aW9uLCBjYXVzaW5n IFNpbXBsZUxydVJlYWRQYWdlKG5leHRfcGFnZW5vKSB0byBmYWlsIHdpdGgKKwkgKiAicmVhZCB0 b28gZmV3IGJ5dGVzIiBiZWNhdXNlIHRoZSBwYWdlIGRvZXNuJ3QgZXhpc3Qgb24gZGlzay4KKwkg KgorCSAqIFVzZSBhbiB1bmNvbmRpdGlvbmFsIGNoZWNrIGluc3RlYWQ6IGR1cmluZyByZWNvdmVy eSwgd2hlbmV2ZXIgd2UgY3Jvc3MKKwkgKiBhIHBhZ2UgYm91bmRhcnksIGFsd2F5cyBlbnN1cmUg dGhlIG5leHQgcGFnZSBpcyBpbml0aWFsaXplZC4KKwkgKiBTaW1wbGVMcnVaZXJvUGFnZSBpcyBp ZGVtcG90ZW50LCBhbmQgd2UgdXNlIHByZV9pbml0aWFsaXplZF9vZmZzZXRzX3BhZ2UKKwkgKiB0 byBza2lwIHRoZSBzdWJzZXF1ZW50IFpFUk9fT0ZGX1BBR0UgcmVwbGF5LCBzbyB0aGlzIGlzIHNh ZmUuCiAJICovCi0JaWYgKEluUmVjb3ZlcnkgJiYKLQkJbmV4dF9wYWdlbm8gIT0gcGFnZW5vICYm Ci0JCU11bHRpWGFjdE9mZnNldEN0bC0+c2hhcmVkLT5sYXRlc3RfcGFnZV9udW1iZXIgPT0gcGFn ZW5vKQorCWlmIChJblJlY292ZXJ5ICYmIG5leHRfcGFnZW5vICE9IHBhZ2VubykKIAl7CiAJCWVs b2coREVCVUcxLCAibmV4dCBvZmZzZXRzIHBhZ2UgaXMgbm90IGluaXRpYWxpemVkLCBpbml0aWFs aXppbmcgaXQgbm93Iik7CiAKLS0gCjIuMzIuMC4zLmcwMTE5NWNmOWYKCg== ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f Content-Type: application/octet-stream Content-Disposition: attachment; filename="=?UTF-8?B?MDAwMi1GaXgtbXVsdGl4YWN0LWNvbXBhdC1sb2dpYy12aWEtU0xSVS1idWZmZXItY2hlY2sucGF0Y2g=?=" Content-Transfer-Encoding: base64 RnJvbSA4MDI1ZDIwOGE1ZTdiYzhhMTc0NDQ1ODQ5YTczMGUyYTJmZjdiMTcyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiZHVhbmt1bnJlbi5ka3IiIDxkdWFua3VucmVuLmRrckBhbGli YWJhLWluYy5jb20+CkRhdGU6IFRodSwgMTkgTWFyIDIwMjYgMjI6MDg6NDkgKzA4MDAKU3ViamVj dDogW1BBVENIXSBGaXggbXVsdGl4YWN0IGNvbXBhdCBsb2dpYyB2aWEgU0xSVSBidWZmZXIgY2hl Y2sKCi0tLQogc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMgfCA3MyArKysr KysrKysrKysrKysrKysrKy0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDU4IGluc2VydGlvbnMoKyks IDE1IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2Ft L211bHRpeGFjdC5jIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0vbXVsdGl4YWN0LmMKaW5k ZXggMjZiOGQ0ZTEyMzAuLjVlMThmOTg4ZTZkIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nl c3MvdHJhbnNhbS9tdWx0aXhhY3QuYworKysgYi9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS9t dWx0aXhhY3QuYwpAQCAtODk3LDI1ICs4OTcsNjggQEAgUmVjb3JkTmV3TXVsdGlYYWN0KE11bHRp WGFjdElkIG11bHRpLCBNdWx0aVhhY3RPZmZzZXQgb2Zmc2V0LAogCSAqIG11bHRpeGlkIHdhcyBh c3NpZ25lZC4gIElmIHdlJ3JlIHJlcGxheWluZyBXQUwgdGhhdCB3YXMgZ2VuZXJhdGVkIGJ5CiAJ ICogc3VjaCBhIHZlcnNpb24sIHRoZSBuZXh0IHBhZ2UgbWlnaHQgbm90IGJlIGluaXRpYWxpemVk IHlldC4gIEluaXRpYWxpemUKIAkgKiBpdCBub3cuCi0JICovCi0JaWYgKEluUmVjb3ZlcnkgJiYK LQkJbmV4dF9wYWdlbm8gIT0gcGFnZW5vICYmCi0JCU11bHRpWGFjdE9mZnNldEN0bC0+c2hhcmVk LT5sYXRlc3RfcGFnZV9udW1iZXIgPT0gcGFnZW5vKQorCSAqCisJICogVGhlIHByZXZpb3VzIGNv bmRpdGlvbiBjaGVja2VkIGxhdGVzdF9wYWdlX251bWJlciA9PSBwYWdlbm8sIGJ1dCB0aGF0CisJ ICogZmFpbHMgYWZ0ZXIgYSBjcmFzaC1yZXN0YXJ0OiBTdGFydHVwTXVsdGlYYWN0KCkgc2V0cwor CSAqIGxhdGVzdF9wYWdlX251bWJlciB0byBwYWdlKGNoZWNrUG9pbnQubmV4dE11bHRpKSwgd2hp Y2ggY2FuIGJlCisJICogbmV4dF9wYWdlbm8gb3IgZXZlbiBoaWdoZXIgd2hlbiB0aGUgY2hlY2tw b2ludCBjYXB0dXJlZCBhbiBhZHZhbmNlZAorCSAqIG5leHRNWGFjdC4gIEluIHRoYXQgY2FzZSwg dGhlID09IGNoZWNrIGRvZXNuJ3QgbWF0Y2ggYW5kIHdlIHNraXAKKwkgKiBpbml0aWFsaXphdGlv biwgY2F1c2luZyBTaW1wbGVMcnVSZWFkUGFnZShuZXh0X3BhZ2VubykgdG8gZmFpbCB3aXRoCisJ ICogInJlYWQgdG9vIGZldyBieXRlcyIgYmVjYXVzZSB0aGUgcGFnZSBkb2Vzbid0IGV4aXN0IG9u IGRpc2suCisJICoKKwkgKiBXaGVuIGxhdGVzdF9wYWdlX251bWJlciA9PSBwYWdlbm8sIHdlIGtu b3cgZm9yIHN1cmUgdGhlIG5leHQgcGFnZSBoYXMKKwkgKiBub3QgYmVlbiBpbml0aWFsaXplZCB5 ZXQuICBPdGhlcndpc2UgKGUuZy4gYWZ0ZXIgY3Jhc2gtcmVzdGFydCksCisJICogbGF0ZXN0X3Bh Z2VfbnVtYmVyIGlzIHVucmVsaWFibGUsIHNvIGZhbGwgYmFjayB0byBjaGVja2luZyB3aGV0aGVy IHRoZQorCSAqIG5leHQgcGFnZSBleGlzdHMgaW4gdGhlIFNMUlUgYnVmZmVyIHBvb2wuICBTaW1w bGVMcnVaZXJvUGFnZSBpcworCSAqIGlkZW1wb3RlbnQsIGFuZCB3ZSB1c2UgcHJlX2luaXRpYWxp emVkX29mZnNldHNfcGFnZSB0byBza2lwIHRoZQorCSAqIHN1YnNlcXVlbnQgWkVST19PRkZfUEFH RSByZXBsYXksIHNvIHRoaXMgaXMgc2FmZS4KKwkgKi8KKwlpZiAoSW5SZWNvdmVyeSAmJiBuZXh0 X3BhZ2VubyAhPSBwYWdlbm8pCiAJewotCQllbG9nKERFQlVHMSwgIm5leHQgb2Zmc2V0cyBwYWdl IGlzIG5vdCBpbml0aWFsaXplZCwgaW5pdGlhbGl6aW5nIGl0IG5vdyIpOworCQlib29sCQluZWVk X2luaXQ7CiAKLQkJLyogQ3JlYXRlIGFuZCB6ZXJvIHRoZSBwYWdlICovCi0JCXNsb3RubyA9IFNp bXBsZUxydVplcm9QYWdlKE11bHRpWGFjdE9mZnNldEN0bCwgbmV4dF9wYWdlbm8pOworCQlpZiAo TXVsdGlYYWN0T2Zmc2V0Q3RsLT5zaGFyZWQtPmxhdGVzdF9wYWdlX251bWJlciA9PSBwYWdlbm8p CisJCXsKKwkJCS8qIEZhc3QgcGF0aDogbGF0ZXN0X3BhZ2VfbnVtYmVyIGNvbmZpcm1zIG5leHQg cGFnZSBub3QgaW5pdGlhbGl6ZWQgKi8KKwkJCW5lZWRfaW5pdCA9IHRydWU7CisJCX0KKwkJZWxz ZQorCQl7CisJCQkvKgorCQkJICogbGF0ZXN0X3BhZ2VfbnVtYmVyICE9IHBhZ2VubywgYnV0IHdl IG1heSBzdGlsbCBuZWVkIHRvCisJCQkgKiBpbml0aWFsaXplLiAgQ2hlY2sgU0xSVSBidWZmZXIg cG9vbCB0byBkZWNpZGUuCisJCQkgKi8KKwkJCVNscnVTaGFyZWQJc2hhcmVkID0gTXVsdGlYYWN0 T2Zmc2V0Q3RsLT5zaGFyZWQ7CiAKLQkJLyogTWFrZSBzdXJlIGl0J3Mgd3JpdHRlbiBvdXQgKi8K LQkJU2ltcGxlTHJ1V3JpdGVQYWdlKE11bHRpWGFjdE9mZnNldEN0bCwgc2xvdG5vKTsKLQkJQXNz ZXJ0KCFNdWx0aVhhY3RPZmZzZXRDdGwtPnNoYXJlZC0+cGFnZV9kaXJ0eVtzbG90bm9dKTsKKwkJ CW5lZWRfaW5pdCA9IHRydWU7CisJCQlmb3IgKHNsb3RubyA9IDA7IHNsb3RubyA8IHNoYXJlZC0+ bnVtX3Nsb3RzOyBzbG90bm8rKykKKwkJCXsKKwkJCQlpZiAoc2hhcmVkLT5wYWdlX251bWJlcltz bG90bm9dID09IG5leHRfcGFnZW5vICYmCisJCQkJCXNoYXJlZC0+cGFnZV9zdGF0dXNbc2xvdG5v XSAhPSBTTFJVX1BBR0VfRU1QVFkpCisJCQkJeworCQkJCQluZWVkX2luaXQgPSBmYWxzZTsKKwkJ CQkJYnJlYWs7CisJCQkJfQorCQkJfQorCQl9CiAKLQkJLyoKLQkJICogUmVtZW1iZXIgdGhhdCB3 ZSBpbml0aWFsaXplZCB0aGUgcGFnZSwgc28gdGhhdCB3ZSBkb24ndCB6ZXJvIGl0Ci0JCSAqIGFn YWluIGF0IHRoZSBYTE9HX01VTFRJWEFDVF9aRVJPX09GRl9QQUdFIHJlY29yZC4KLQkJICovCi0J CXByZV9pbml0aWFsaXplZF9vZmZzZXRzX3BhZ2UgPSBuZXh0X3BhZ2VubzsKKwkJaWYgKG5lZWRf aW5pdCkKKwkJeworCQkJZWxvZyhERUJVRzEsICJuZXh0IG9mZnNldHMgcGFnZSBpcyBub3QgaW5p dGlhbGl6ZWQsIGluaXRpYWxpemluZyBpdCBub3ciKTsKKworCQkJLyogQ3JlYXRlIGFuZCB6ZXJv IHRoZSBwYWdlICovCisJCQlzbG90bm8gPSBTaW1wbGVMcnVaZXJvUGFnZShNdWx0aVhhY3RPZmZz ZXRDdGwsIG5leHRfcGFnZW5vKTsKKworCQkJLyogTWFrZSBzdXJlIGl0J3Mgd3JpdHRlbiBvdXQg Ki8KKwkJCVNpbXBsZUxydVdyaXRlUGFnZShNdWx0aVhhY3RPZmZzZXRDdGwsIHNsb3Rubyk7CisJ CQlBc3NlcnQoIU11bHRpWGFjdE9mZnNldEN0bC0+c2hhcmVkLT5wYWdlX2RpcnR5W3Nsb3Rub10p OworCisJCQkvKgorCQkJICogUmVtZW1iZXIgdGhhdCB3ZSBpbml0aWFsaXplZCB0aGUgcGFnZSwg c28gdGhhdCB3ZSBkb24ndCB6ZXJvIGl0CisJCQkgKiBhZ2FpbiBhdCB0aGUgWExPR19NVUxUSVhB Q1RfWkVST19PRkZfUEFHRSByZWNvcmQuCisJCQkgKi8KKwkJCXByZV9pbml0aWFsaXplZF9vZmZz ZXRzX3BhZ2UgPSBuZXh0X3BhZ2VubzsKKwkJfQogCX0KIAogCS8qCi0tIAoyLjMyLjAuMy5nMDEx OTVjZjlmCgo= ------=ALIBOUNDARY_2798_7ff374327700_69bc3a36_39568f--