From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5CF22C43334 for ; Sat, 2 Jul 2022 03:00:46 +0000 (UTC) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 4DB0E40A80; Sat, 2 Jul 2022 05:00:45 +0200 (CEST) Received: from m13193.mail.163.com (m13193.mail.163.com [220.181.13.193]) by mails.dpdk.org (Postfix) with ESMTP id E34A040A7D; Sat, 2 Jul 2022 05:00:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=Date:From:Subject:MIME-Version:Message-ID; bh=LD5ut ylETgDC6Ks0Nq5XQEYYdDCnYKKWQyf4LdMuUF4=; b=MEGAMf0Pdn38NIYGoOH34 oYkYDWSCUB0rtGTt84pH25hDfZHVKtr0KaW67ENgknOLokYyOfOJpkdN2jSPv+kH uJGwqXklG7MvKkuIRYz48woQ8azLfOdIhxFuFOrx3L41FV0WKnROqbPZb7/tePvT +93Wn7EJWAJYb3nwSl1DXw= Received: from gaoxiangliu0$163.com ( [119.3.119.18] ) by ajax-webmail-wmsvr193 (Coremail) ; Sat, 2 Jul 2022 11:00:18 +0800 (GMT+08:00) X-Originating-IP: [119.3.119.18] Date: Sat, 2 Jul 2022 11:00:18 +0800 (GMT+08:00) From: "Gaoxiang Liu" To: "Xia, Chenbo" Cc: "maxime.coquelin@redhat.com" , "dev@dpdk.org" , "liugaoxiang@huawei.com" , "stable@dpdk.org" Subject: Re: [PATCH v2] vhost: fix avail idx update error when desc copy failed X-Priority: 3 X-Mailer: Coremail Webmail Server Version XT5.0.13 build 20210622(1d4788a8) Copyright (c) 2002-2022 www.mailtech.cn 163com In-Reply-To: References: <20220622005600.5920-1-gaoxiangliu0@163.com> <20220622011944.6115-1-gaoxiangliu0@163.com> X-CM-CTRLMSGS: hbb78A== Content-Type: multipart/alternative; boundary="----=_Part_82607_248611670.1656730818542" MIME-Version: 1.0 Message-ID: <56b0a015.6d59.181bcda17ee.Coremail.gaoxiangliu0@163.com> X-Coremail-Locale: zh_CN X-CM-TRANSID: wcGowAB3f3vCtL9imM0kAA--.63541W X-CM-SenderInfo: xjdr5xxdqjzxjxq6il2tof0z/xtbB0R0xOlzIBtHNPAABs0 X-Coremail-Antispam: 1U5529EdanIXcx71UUUUU7vcSsGvfC2KfnxnUU== X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org ------=_Part_82607_248611670.1656730818542 Content-Type: text/plain; charset=GBK Content-Transfer-Encoding: base64 SGmjrENoZW5ibwoKCklmIHZob3N0IGRyaXZlciByZWNlaXZlcyBhIG1idWYgbGlzdKOsdGhlIG1i dWYgbGlzdCBoYXMgdHdvIG1idWajrAphbmQgdGhlIHBrdF9sZW4gb2YgdGhlIGZpcnN0IG1idWYg aW4gdGhlIG1idWYgbGlzdCBpcyB0aGUgc3VtIG9mIGRhdGFfbGVuIG9mIGFsbCBtYnVmo6xhbmQg dGhlIHBrdF9sZW4gb2YgdGhlIHNlY29uZCBtYnVmIGlzIDAuCldoZW4gZGVzY190b19tYnVmIGZh aWxlZKOsaSBhZGRlZCAxIGFuZCBsYXN0X2F2YWlsX2lkeCBhZGRlZCBpLgoKSXQgbWF5IGNhdXNl IHRoZSBmaXJzdCBtYnVmIHRvIGJlIGRyb3BwZWQgYW5kIHRoZSBzZWNvbmQgbWJ1ZiB0byBiZSBy ZWNlaXZlZC4KSXQgaXMgYWJub3JtYWyjrGJlY2F1c2UgdGhlIHJlY2VpdmVkIG1idWYgaXMgbm90 CmNvbXBsZXRlIGR1ZSB0byBsYWNrIG9mIHRoZSBmaXJzdCBtYnVmo6xhbmQgaXRzIHBrdF9sZW4g aXMgMC4KQmVjYXVzZSB0aGUgc2VuZGVyIHNlbmRzIGEgbm9ybWFsIG1idWYtbGlzdCBwYWNrZXSj rHRoZSB2aG9zdCBhcHAgcmVjZWl2ZXMgdGhlIG1idWYgYW5kIGNvbnNpZGVycyBpdCBzaG91bGQg YmUgYSBub3JtYWwgcGt0LgpUaGUgcGt0X2xlbiBpcyB1c2VkIKOsYnV0IGlzIG5vdCBjaGVja2Vk o6x3aGVuIHRoZSB2aG9zdCBhcHAgY2FsY3VsYXRlcyB0aGUgY2hlY2tzdW0gb2YgdGhlIHBrdC4K VGhlIHBrdF9sZW4gbWludXMgdGhlIGxlbmd0aCBvZiB0aGUgVURQIGhlYWRlciBpcyBhIGxhcmdl IHZhbHVlIGJlY2F1c2Ugb2YgdGhlIG5lZ2F0aXZlIG51bWJlciByZXZlcnNlLgpJdCByZXN1bHRz IGluIHNlZ21lbnQgZmF1bHQgd2hlbiB0aGUgdmhvc3QgYXBwIHVzZXMgdGhlIGxhcmdlIHZhbHVl IHRvIHRyYXZlcnNlIHRoZSBtYnVmIKOsaWYgdGhlIGFkZHJlc3Mgb2YgdGhlIG1idWYgaXMgbGFy Z2VzdCBpbiBhbGwgbWJ1ZqOsYmVjYXVzZSB0aGUgdmhvc3QgYXBwIG1heSBhY2Nlc3MgaW52YWxp ZCBtZW1vcnkgLgoKClRoYW5rcy4KR2FveGlhbmcKCgoKCgoKCi0tLS0gUmVwbGllZCBNZXNzYWdl IC0tLS0KfCBGcm9tIHwgWGlhLCBDaGVuYm88Y2hlbmJvLnhpYUBpbnRlbC5jb20+IHwKfCBEYXRl IHwgMDcvMDEvMjAyMiAyMTowNSB8CnwgVG8gfCBHYW94aWFuZyBMaXU8Z2FveGlhbmdsaXUwQDE2 My5jb20+LAptYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbTxtYXhpbWUuY29xdWVsaW5AcmVkaGF0 LmNvbT4gfAp8IENjIHwgZGV2QGRwZGsub3JnPGRldkBkcGRrLm9yZz4sCmxpdWdhb3hpYW5nQGh1 YXdlaS5jb208bGl1Z2FveGlhbmdAaHVhd2VpLmNvbT4sCnN0YWJsZUBkcGRrLm9yZzxzdGFibGVA ZHBkay5vcmc+IHwKfCBTdWJqZWN0IHwgUkU6IFtQQVRDSCB2Ml0gdmhvc3Q6IGZpeCBhdmFpbCBp ZHggdXBkYXRlIGVycm9yIHdoZW4gZGVzYyBjb3B5IGZhaWxlZCB8Cj4gLS0tLS1PcmlnaW5hbCBN ZXNzYWdlLS0tLS0KPiBGcm9tOiBHYW94aWFuZyBMaXUgPGdhb3hpYW5nbGl1MEAxNjMuY29tPgo+ IFNlbnQ6IFdlZG5lc2RheSwgSnVuZSAyMiwgMjAyMiA5OjIwIEFNCj4gVG86IG1heGltZS5jb3F1 ZWxpbkByZWRoYXQuY29tOyBYaWEsIENoZW5ibyA8Y2hlbmJvLnhpYUBpbnRlbC5jb20+Cj4gQ2M6 IGRldkBkcGRrLm9yZzsgbGl1Z2FveGlhbmdAaHVhd2VpLmNvbTsgR2FveGlhbmcgTGl1Cj4gPGdh b3hpYW5nbGl1MEAxNjMuY29tPjsgc3RhYmxlQGRwZGsub3JnCj4gU3ViamVjdDogW1BBVENIIHYy XSB2aG9zdDogZml4IGF2YWlsIGlkeCB1cGRhdGUgZXJyb3Igd2hlbiBkZXNjIGNvcHkKPiBmYWls ZWQKPgo+IFdoZW4gY29weV9kZXNjX3RvX21idWYgZnVuY3Rpb24gZmFpbGVkLCBpIGFkZGVkIDEu CgpGdW5jdGlvbiBuYW1lIG5vdyBpcyBkZXNjX3RvX21idWYKCj4gQW5kIGxhc3RfYXZhaWxfaWR4 IGFkZGVkIGksIG90aGVyIHRoYW4gaSAtIDEuCj4gSXQgbWF5IGNhdXNlIHRoYXQgdGhlIGZpcnN0 IG1idWYgaW4gbWJ1Zi1saXN0IGlzIGRyb3BwZWQsCj4gdGhlIHNlY29uZCBtYnVmIGluIG1idWYt bGlzdCBpcyByZWNlaXZlZCBpbiB0aGUgZm9sbG93aW5nCj4gcnggcHJvY2VkdXJlLgo+IEFuZCBU aGUgcGt0X2xlbiBvZiB0aGUgc2Vjb25kIG1idWYgaXMgemVybywgcmVzdWx0aW5nIGluCj4gc2Vn bWVudCBmYXVsdCB3aGVuIHBhcnNpbmcgdGhlIG1idWYuCgpDb3VsZCB5b3UgaGVscCBlbGFib3Jh dGUgbW9yZT8gRG8geW91IG1lYW4gZmlyc3QgbWJ1ZiBsZW4gaXMgemVybwphcyBpdCdzIGRyb3Bw ZWQ/IEFuZCB3aGVyZSBkb2VzIHRoZSBzZWdmYXVsdCBoYXBwZW4/IEFQUD8gUGxlYXNlCmRlc2Ny aWJlIG1vcmUgdG8gaGVscCB1bmRlcnN0YW5kIHRoZSBpc3N1ZS4KCkJ1dCBJIGRvIG5vdGljZSBv bmUgcHJvYmxlbSBoZXJlIGlzIGlmIHZob3N0IEFQUCBkb2VzIG5vdCBoYW5kbGUKdGhlIG1idWYg YXJyYXkgY29ycmVjdGx5LCBzb21lIHBhY2tldHMgd2lsbCBiZSBtaXNzZWQgaW4gdGhlIGNhc2UK b2YgcGt0cyBnb3QgZHJvcHBlZCBpbiB0aGUgbWlkZGxlIG9mIGEgYnVyc3QuCgpUaGFua3MsCkNo ZW5ibwoKPgo+IEZpeGVzOiAwZmQ1NjA4ZWY5N2YgKCJ2aG9zdDogaGFuZGxlIG1idWYgYWxsb2Nh dGlvbiBmYWlsdXJlIikKPiBDYzogc3RhYmxlQGRwZGsub3JnCj4KPiBTaWduZWQtb2ZmLWJ5OiBH YW94aWFuZyBMaXUgPGxpdWdhb3hpYW5nQGh1YXdlaS5jb20+Cj4KPiAtLS0KPiB2MjoKPiAqIEZp eGVkIG90aGVyIGlkeCB1cGRhdGUgZXJyb3JzLgo+IC0tLQo+ICBsaWIvdmhvc3QvdmlydGlvX25l dC5jIHwgNiArKystLS0KPiAgMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxl dGlvbnMoLSkKPgo+IGRpZmYgLS1naXQgYS9saWIvdmhvc3QvdmlydGlvX25ldC5jIGIvbGliL3Zo b3N0L3ZpcnRpb19uZXQuYwo+IGluZGV4IDY4YTI2ZWIxN2QuLmViMjU0ZTEwMjQgMTAwNjQ0Cj4g LS0tIGEvbGliL3Zob3N0L3ZpcnRpb19uZXQuYwo+ICsrKyBiL2xpYi92aG9zdC92aXJ0aW9fbmV0 LmMKPiBAQCAtMjg1MCwxMSArMjg1MCwxMSBAQCB2aXJ0aW9fZGV2X3R4X3NwbGl0KHN0cnVjdCB2 aXJ0aW9fbmV0ICpkZXYsIHN0cnVjdAo+IHZob3N0X3ZpcnRxdWV1ZSAqdnEsCj4gICAgICBpZiAo ZHJvcHBlZCkKPiAgICAgICAgICBydGVfcGt0bWJ1Zl9mcmVlX2J1bGsoJnBrdHNbaSAtIDFdLCBj b3VudCAtIGkgKyAxKTsKPgo+IC0gICAgdnEtPmxhc3RfYXZhaWxfaWR4ICs9IGk7Cj4gKyAgICB2 cS0+bGFzdF9hdmFpbF9pZHggKz0gaSAtIGRyb3BwZWQ7Cj4KPiAgICAgIGRvX2RhdGFfY29weV9k ZXF1ZXVlKHZxKTsKPiAtICAgIGlmICh1bmxpa2VseShpIDwgY291bnQpKQo+IC0gICAgICAgIHZx LT5zaGFkb3dfdXNlZF9pZHggPSBpOwo+ICsgICAgaWYgKHVubGlrZWx5KChpIC0gZHJvcHBlZCkg PCBjb3VudCkpCj4gKyAgICAgICAgdnEtPnNoYWRvd191c2VkX2lkeCA9IGkgLSBkcm9wcGVkOwo+ ICAgICAgaWYgKGxpa2VseSh2cS0+c2hhZG93X3VzZWRfaWR4KSkgewo+ICAgICAgICAgIGZsdXNo X3NoYWRvd191c2VkX3Jpbmdfc3BsaXQoZGV2LCB2cSk7Cj4gICAgICAgICAgdmhvc3RfdnJpbmdf Y2FsbF9zcGxpdChkZXYsIHZxKTsKPiAtLQo+IDIuMzIuMAo= ------=_Part_82607_248611670.1656730818542 Content-Type: text/html; charset=GBK Content-Transfer-Encoding: base64 PGRpdj5IaaOsQ2hlbmJvPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj5JZiB2aG9zdCBkcml2ZXIg cmVjZWl2ZXMgYSBtYnVmIGxpc3SjrHRoZSBtYnVmIGxpc3QgaGFzIHR3byBtYnVmo6w8L2Rpdj48 ZGl2PmFuZCB0aGUgcGt0X2xlbiBvZiB0aGUgZmlyc3QgbWJ1ZiBpbiB0aGUgbWJ1ZiBsaXN0IGlz IHRoZSBzdW0gb2YgZGF0YV9sZW4gb2YgYWxsIG1idWajrGFuZCB0aGUgcGt0X2xlbiBvZiB0aGUg c2Vjb25kIG1idWYgaXMgMC48L2Rpdj48ZGl2PldoZW4gZGVzY190b19tYnVmIGZhaWxlZKOsaSBh ZGRlZCAxIGFuZCBsYXN0X2F2YWlsX2lkeCBhZGRlZCBpLjxicj48L2Rpdj48ZGl2Pkl0IG1heSBj YXVzZSB0aGUgZmlyc3QgbWJ1ZiB0byBiZSBkcm9wcGVkIGFuZCB0aGUgc2Vjb25kIG1idWYgdG8g YmUgcmVjZWl2ZWQuPC9kaXY+PGRpdj5JdCBpcyBhYm5vcm1hbKOsYmVjYXVzZSB0aGUgcmVjZWl2 ZWQgbWJ1ZiBpcyBub3Q8L2Rpdj48ZGl2PmNvbXBsZXRlIGR1ZSB0byBsYWNrIG9mIHRoZSBmaXJz dCBtYnVmo6xhbmQgaXRzIHBrdF9sZW4gaXMgMC48L2Rpdj48ZGl2PkJlY2F1c2UgdGhlIHNlbmRl ciBzZW5kcyBhIG5vcm1hbCBtYnVmLWxpc3QgcGFja2V0o6x0aGUgdmhvc3QgYXBwIHJlY2VpdmVz IHRoZSBtYnVmIGFuZCBjb25zaWRlcnMgaXQgc2hvdWxkIGJlIGEgbm9ybWFsIHBrdC48L2Rpdj48 ZGl2PlRoZSBwa3RfbGVuIGlzIHVzZWQgo6xidXQgaXMgbm90IGNoZWNrZWSjrHdoZW4gdGhlIHZo b3N0IGFwcCBjYWxjdWxhdGVzIHRoZSBjaGVja3N1bSBvZiB0aGUgcGt0LjwvZGl2PjxkaXY+VGhl IHBrdF9sZW4gbWludXMgdGhlIGxlbmd0aCBvZiB0aGUgVURQIGhlYWRlciBpcyBhIGxhcmdlIHZh bHVlIGJlY2F1c2Ugb2YgdGhlIG5lZ2F0aXZlIG51bWJlciByZXZlcnNlLjwvZGl2PjxkaXY+SXQg cmVzdWx0cyBpbiBzZWdtZW50IGZhdWx0IHdoZW4gdGhlIHZob3N0IGFwcCB1c2VzIHRoZSBsYXJn ZSB2YWx1ZSB0byB0cmF2ZXJzZSB0aGUgbWJ1ZiCjrGlmIHRoZSBhZGRyZXNzIG9mIHRoZSBtYnVm IGlzIGxhcmdlc3QgaW4gYWxsIG1idWajrGJlY2F1c2UgdGhlIHZob3N0IGFwcCBtYXkgYWNjZXNz IGludmFsaWQgbWVtb3J5IC48L2Rpdj48ZGl2Pjxicj48L2Rpdj48ZGl2PlRoYW5rcy48L2Rpdj48 ZGl2Pkdhb3hpYW5nPC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+PC9kaXY+PGRpdj48YnI+ PGJyPjxkaXYgaWQ9ImltYWlsX3NpZ25hdHVyZSI+PC9kaXY+PGRpdiBjbGFzcz0ibnRlcy1tYWls bWFzdGVyLXF1b3RlIiBzdHlsZT0icGFkZGluZy10b3A6IDFweDsgcGFkZGluZy1ib3R0b206IDFw eCI+PGRpdiBzdHlsZT0ibWFyZ2luLXRvcDogMmVtO21hcmdpbi1ib3R0b206IDFlbTtmb250LXNp emU6IDE0cHg7bGluZS1oZWlnaHQ6IDEuMjU7Y29sb3I6ICM3ODc4N2E7Ij4tLS0tIFJlcGxpZWQg TWVzc2FnZSAtLS0tPC9kaXY+PGRpdiBzdHlsZT0ibWFyZ2luLWJvdHRvbTogMWVtO2ZvbnQtc2l6 ZTogMTJweDtsaW5lLWhlaWdodDogMS4yNTtjb2xvcjogIzIzMjMyNDtwYWRkaW5nOiAwLjVlbSAw LjI1ZW07Ym9yZGVyLXJhZGl1czogMC42N2VtO2JhY2tncm91bmQtY29sb3I6ICNmMGYwZjA7Ij48 dGFibGUgd2lkdGg9IjEwMCUiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2luZz0iOSIgYm9yZGVy PSIwIj48dGJvZHk+PHRyPjx0ZCB2YWxpZ249InRvcCIgc3R5bGU9IndpZHRoOiA0LjI1ZW07Zm9u dC1zaXplOiAxMnB4O2xpbmUtaGVpZ2h0OiAxLjI1O2NvbG9yOiAjNzg3ODdhOyI+PHNwYW4gc3R5 bGU9ImNvbG9yOiM4YjhkOTQiPkZyb208L3NwYW4+PC90ZD48dGQgdmFsaWduPSJ0b3AiIHN0eWxl PSJmb250LXNpemU6IDEycHg7bGluZS1oZWlnaHQ6IDEuMjU7Y29sb3I6ICMyMzIzMjQ7d29yZC1i cmVhazogYnJlYWstYWxsOyI+PGEgY2xhc3M9Im1haWwtZnJvbSIgc3R5bGU9ImNvbG9yOiAjMDg4 NmU4OyB0ZXh0LWRlY29yYXRpb246IG5vbmUiIGhyZWY9Im1haWx0bzpjaGVuYm8ueGlhQGludGVs LmNvbSI+WGlhLCBDaGVuYm8mbHQ7Y2hlbmJvLnhpYUBpbnRlbC5jb20mZ3Q7PC9hPjwvdGQ+PC90 cj48dHI+PHRkIHZhbGlnbj0idG9wIiBzdHlsZT0id2lkdGg6IDQuMjVlbTtmb250LXNpemU6IDEy cHg7bGluZS1oZWlnaHQ6IDEuMjU7Y29sb3I6ICM3ODc4N2E7Ij48c3BhbiBzdHlsZT0iY29sb3I6 IzhiOGQ5NCI+RGF0ZTwvc3Bhbj48L3RkPjx0ZCBjbGFzcz0ibWFpbC1kYXRlIiB2YWxpZ249InRv cCIgc3R5bGU9ImZvbnQtc2l6ZTogMTJweDtsaW5lLWhlaWdodDogMS4yNTtjb2xvcjogIzIzMjMy NDt3b3JkLWJyZWFrOiBicmVhay1hbGw7Ij48c3BhbiBjbGFzcz0ibWFpbC1kYXRlIiBzdHlsZT0i Y29sb3I6YmxhY2siPjA3LzAxLzIwMjIgMjE6MDU8L3NwYW4+PC90ZD48L3RyPjx0cj48dGQgdmFs aWduPSJ0b3AiIHN0eWxlPSJ3aWR0aDogNC4yNWVtO2ZvbnQtc2l6ZTogMTJweDtsaW5lLWhlaWdo dDogMS4yNTtjb2xvcjogIzc4Nzg3YTsiPiA8c3BhbiBzdHlsZT0iY29sb3I6IzhiOGQ5NCI+VG88 L3NwYW4+PC90ZD48dGQgdmFsaWduPSJ0b3AiIHN0eWxlPSJmb250LXNpemU6IDEycHg7bGluZS1o ZWlnaHQ6IDEuMjU7Y29sb3I6ICMyMzIzMjQ7d29yZC1icmVhazogYnJlYWstYWxsOyI+PGEgY2xh c3M9Im1haWwtdG8iIHN0eWxlPSJjb2xvcjogIzA4ODZlODsgdGV4dC1kZWNvcmF0aW9uOiBub25l IiBocmVmPSJtYWlsdG86Z2FveGlhbmdsaXUwQDE2My5jb20iPkdhb3hpYW5nIExpdSZsdDtnYW94 aWFuZ2xpdTBAMTYzLmNvbSZndDs8L2E+LDxicj48YSBjbGFzcz0ibWFpbC10byIgc3R5bGU9ImNv bG9yOiAjMDg4NmU4OyB0ZXh0LWRlY29yYXRpb246IG5vbmUiIGhyZWY9Im1haWx0bzptYXhpbWUu Y29xdWVsaW5AcmVkaGF0LmNvbSI+bWF4aW1lLmNvcXVlbGluQHJlZGhhdC5jb20mbHQ7bWF4aW1l LmNvcXVlbGluQHJlZGhhdC5jb20mZ3Q7PC9hPjwvdGQ+PC90cj48dHI+PHRkIHZhbGlnbj0idG9w IiBzdHlsZT0id2lkdGg6IDQuMjVlbTtmb250LXNpemU6IDEycHg7bGluZS1oZWlnaHQ6IDEuMjU7 Y29sb3I6ICM3ODc4N2E7Ij4gPHNwYW4gc3R5bGU9ImNvbG9yOiM4YjhkOTQiPkNjPC9zcGFuPjwv dGQ+PHRkIHZhbGlnbj0idG9wIiBzdHlsZT0iZm9udC1zaXplOiAxMnB4O2xpbmUtaGVpZ2h0OiAx LjI1O2NvbG9yOiAjMjMyMzI0O3dvcmQtYnJlYWs6IGJyZWFrLWFsbDsiPjxhIGNsYXNzPSJtYWls LWNjIiBzdHlsZT0iY29sb3I6ICMwODg2ZTg7IHRleHQtZGVjb3JhdGlvbjogbm9uZSIgaHJlZj0i bWFpbHRvOmRldkBkcGRrLm9yZyI+ZGV2QGRwZGsub3JnJmx0O2RldkBkcGRrLm9yZyZndDs8L2E+ LDxicj48YSBjbGFzcz0ibWFpbC1jYyIgc3R5bGU9ImNvbG9yOiAjMDg4NmU4OyB0ZXh0LWRlY29y YXRpb246IG5vbmUiIGhyZWY9Im1haWx0bzpsaXVnYW94aWFuZ0BodWF3ZWkuY29tIj5saXVnYW94 aWFuZ0BodWF3ZWkuY29tJmx0O2xpdWdhb3hpYW5nQGh1YXdlaS5jb20mZ3Q7PC9hPiw8YnI+PGEg Y2xhc3M9Im1haWwtY2MiIHN0eWxlPSJjb2xvcjogIzA4ODZlODsgdGV4dC1kZWNvcmF0aW9uOiBu b25lIiBocmVmPSJtYWlsdG86c3RhYmxlQGRwZGsub3JnIj5zdGFibGVAZHBkay5vcmcmbHQ7c3Rh YmxlQGRwZGsub3JnJmd0OzwvYT48L3RkPjwvdHI+PHRyPjx0ZCB2YWxpZ249InRvcCIgc3R5bGU9 IndpZHRoOiA0LjI1ZW07Zm9udC1zaXplOiAxMnB4O2xpbmUtaGVpZ2h0OiAxLjI1O2NvbG9yOiAj Nzg3ODdhOyI+PHNwYW4gc3R5bGU9ImNvbG9yOiM4YjhkOTQiPlN1YmplY3Q8L3NwYW4+PC90ZD48 dGQgY2xhc3M9Im1haWwtc3ViamVjdCIgdmFsaWduPSJ0b3AiIHN0eWxlPSJmb250LXNpemU6IDEy cHg7bGluZS1oZWlnaHQ6IDEuMjU7Y29sb3I6ICMyMzIzMjQ7d29yZC1icmVhazogYnJlYWstYWxs OyI+PHNwYW4gY2xhc3M9Im1haWwtc3ViamVjdCIgc3R5bGU9ImNvbG9yOmJsYWNrIj5SRTogW1BB VENIIHYyXSB2aG9zdDogZml4IGF2YWlsIGlkeCB1cGRhdGUgZXJyb3Igd2hlbiBkZXNjIGNvcHkg ZmFpbGVkPC9zcGFuPjwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PC9kaXY+PGRpdj4mZ3Q7IC0t LS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tCjxicj4mZ3Q7IEZyb206IEdhb3hpYW5nIExpdSAmbHQ7 Z2FveGlhbmdsaXUwQDE2My5jb20mZ3Q7Cjxicj4mZ3Q7IFNlbnQ6IFdlZG5lc2RheSwgSnVuZSAy MiwgMjAyMiA5OjIwIEFNCjxicj4mZ3Q7IFRvOiBtYXhpbWUuY29xdWVsaW5AcmVkaGF0LmNvbTsg WGlhLCBDaGVuYm8gJmx0O2NoZW5iby54aWFAaW50ZWwuY29tJmd0Owo8YnI+Jmd0OyBDYzogZGV2 QGRwZGsub3JnOyBsaXVnYW94aWFuZ0BodWF3ZWkuY29tOyBHYW94aWFuZyBMaXUKPGJyPiZndDsg Jmx0O2dhb3hpYW5nbGl1MEAxNjMuY29tJmd0Ozsgc3RhYmxlQGRwZGsub3JnCjxicj4mZ3Q7IFN1 YmplY3Q6IFtQQVRDSCB2Ml0gdmhvc3Q6IGZpeCBhdmFpbCBpZHggdXBkYXRlIGVycm9yIHdoZW4g ZGVzYyBjb3B5Cjxicj4mZ3Q7IGZhaWxlZAo8YnI+Jmd0OyAKPGJyPiZndDsgV2hlbiBjb3B5X2Rl c2NfdG9fbWJ1ZiBmdW5jdGlvbiBmYWlsZWQsIGkgYWRkZWQgMS4KPGJyPgo8YnI+RnVuY3Rpb24g bmFtZSBub3cgaXMgZGVzY190b19tYnVmCjxicj4KPGJyPiZndDsgQW5kIGxhc3RfYXZhaWxfaWR4 IGFkZGVkIGksIG90aGVyIHRoYW4gaSAtIDEuCjxicj4mZ3Q7IEl0IG1heSBjYXVzZSB0aGF0IHRo ZSBmaXJzdCBtYnVmIGluIG1idWYtbGlzdCBpcyBkcm9wcGVkLAo8YnI+Jmd0OyB0aGUgc2Vjb25k IG1idWYgaW4gbWJ1Zi1saXN0IGlzIHJlY2VpdmVkIGluIHRoZSBmb2xsb3dpbmcKPGJyPiZndDsg cnggcHJvY2VkdXJlLgo8YnI+Jmd0OyBBbmQgVGhlIHBrdF9sZW4gb2YgdGhlIHNlY29uZCBtYnVm IGlzIHplcm8sIHJlc3VsdGluZyBpbgo8YnI+Jmd0OyBzZWdtZW50IGZhdWx0IHdoZW4gcGFyc2lu ZyB0aGUgbWJ1Zi4KPGJyPgo8YnI+Q291bGQgeW91IGhlbHAgZWxhYm9yYXRlIG1vcmU/IERvIHlv dSBtZWFuIGZpcnN0IG1idWYgbGVuIGlzIHplcm8KPGJyPmFzIGl0J3MgZHJvcHBlZD8gQW5kIHdo ZXJlIGRvZXMgdGhlIHNlZ2ZhdWx0IGhhcHBlbj8gQVBQPyBQbGVhc2UKPGJyPmRlc2NyaWJlIG1v cmUgdG8gaGVscCB1bmRlcnN0YW5kIHRoZSBpc3N1ZS4KPGJyPgo8YnI+QnV0IEkgZG8gbm90aWNl IG9uZSBwcm9ibGVtIGhlcmUgaXMgaWYgdmhvc3QgQVBQIGRvZXMgbm90IGhhbmRsZQo8YnI+dGhl IG1idWYgYXJyYXkgY29ycmVjdGx5LCBzb21lIHBhY2tldHMgd2lsbCBiZSBtaXNzZWQgaW4gdGhl IGNhc2UKPGJyPm9mIHBrdHMgZ290IGRyb3BwZWQgaW4gdGhlIG1pZGRsZSBvZiBhIGJ1cnN0Lgo8 YnI+Cjxicj5UaGFua3MsCjxicj5DaGVuYm8KPGJyPgo8YnI+Jmd0OyAKPGJyPiZndDsgRml4ZXM6 IDBmZDU2MDhlZjk3ZiAoInZob3N0OiBoYW5kbGUgbWJ1ZiBhbGxvY2F0aW9uIGZhaWx1cmUiKQo8 YnI+Jmd0OyBDYzogc3RhYmxlQGRwZGsub3JnCjxicj4mZ3Q7IAo8YnI+Jmd0OyBTaWduZWQtb2Zm LWJ5OiBHYW94aWFuZyBMaXUgJmx0O2xpdWdhb3hpYW5nQGh1YXdlaS5jb20mZ3Q7Cjxicj4mZ3Q7 IAo8YnI+Jmd0OyAtLS0KPGJyPiZndDsgdjI6Cjxicj4mZ3Q7ICogRml4ZWQgb3RoZXIgaWR4IHVw ZGF0ZSBlcnJvcnMuCjxicj4mZ3Q7IC0tLQo8YnI+Jmd0OyAmbmJzcDtsaWIvdmhvc3QvdmlydGlv X25ldC5jIHwgNiArKystLS0KPGJyPiZndDsgJm5ic3A7MSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKPGJyPiZndDsgCjxicj4mZ3Q7IGRpZmYgLS1naXQgYS9s aWIvdmhvc3QvdmlydGlvX25ldC5jIGIvbGliL3Zob3N0L3ZpcnRpb19uZXQuYwo8YnI+Jmd0OyBp bmRleCA2OGEyNmViMTdkLi5lYjI1NGUxMDI0IDEwMDY0NAo8YnI+Jmd0OyAtLS0gYS9saWIvdmhv c3QvdmlydGlvX25ldC5jCjxicj4mZ3Q7ICsrKyBiL2xpYi92aG9zdC92aXJ0aW9fbmV0LmMKPGJy PiZndDsgQEAgLTI4NTAsMTEgKzI4NTAsMTEgQEAgdmlydGlvX2Rldl90eF9zcGxpdChzdHJ1Y3Qg dmlydGlvX25ldCAqZGV2LCBzdHJ1Y3QKPGJyPiZndDsgdmhvc3RfdmlydHF1ZXVlICp2cSwKPGJy PiZndDsgJm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwO2lmIChkcm9wcGVkKQo8YnI+Jmd0OyAmbmJz cDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwO3J0ZV9wa3RtYnVmX2ZyZWVf YnVsaygmYW1wO3BrdHNbaSAtIDFdLCBjb3VudCAtIGkgKyAxKTsKPGJyPiZndDsgCjxicj4mZ3Q7 IC0gJm5ic3A7Jm5ic3A7Jm5ic3A7dnEtJmd0O2xhc3RfYXZhaWxfaWR4ICs9IGk7Cjxicj4mZ3Q7 ICsgJm5ic3A7Jm5ic3A7Jm5ic3A7dnEtJmd0O2xhc3RfYXZhaWxfaWR4ICs9IGkgLSBkcm9wcGVk Owo8YnI+Jmd0OyAKPGJyPiZndDsgJm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwO2RvX2RhdGFfY29w eV9kZXF1ZXVlKHZxKTsKPGJyPiZndDsgLSAmbmJzcDsmbmJzcDsmbmJzcDtpZiAodW5saWtlbHko aSAmbHQ7IGNvdW50KSkKPGJyPiZndDsgLSAmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7 Jm5ic3A7dnEtJmd0O3NoYWRvd191c2VkX2lkeCA9IGk7Cjxicj4mZ3Q7ICsgJm5ic3A7Jm5ic3A7 Jm5ic3A7aWYgKHVubGlrZWx5KChpIC0gZHJvcHBlZCkgJmx0OyBjb3VudCkpCjxicj4mZ3Q7ICsg Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwO3ZxLSZndDtzaGFkb3dfdXNlZF9p ZHggPSBpIC0gZHJvcHBlZDsKPGJyPiZndDsgJm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwO2lmIChs aWtlbHkodnEtJmd0O3NoYWRvd191c2VkX2lkeCkpIHsKPGJyPiZndDsgJm5ic3A7ICZuYnNwOyZu YnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDtmbHVzaF9zaGFkb3dfdXNlZF9yaW5nX3NwbGl0 KGRldiwgdnEpOwo8YnI+Jmd0OyAmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNw OyZuYnNwO3Zob3N0X3ZyaW5nX2NhbGxfc3BsaXQoZGV2LCB2cSk7Cjxicj4mZ3Q7IC0tCjxicj4m Z3Q7IDIuMzIuMAo8YnI+PC9kaXY+PC9kaXY+CiAgICAgICAgPC9kaXY+CiAgICA= ------=_Part_82607_248611670.1656730818542--