From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id CBE914777B for ; Sun, 22 Oct 2023 13:29:57 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 35FEE68C985; Sun, 22 Oct 2023 16:29:55 +0300 (EEST) Received: from smtp-my3-01p3.yunyou.top (smtp-my3-01p3.yunyou.top [60.247.169.3]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id A41CA68C08B for ; Sun, 22 Oct 2023 16:29:46 +0300 (EEST) Received: from [192.168.15.116] (unknown [125.118.196.203]) by smtp-my-01.yunyou.top (WestCloudMail) with ESMTPA id 475471020E2; Sun, 22 Oct 2023 21:29:39 +0800 (CST) Message-ID: <723ec8dd-67ca-4b69-82b8-ebde9234e32f@myais.com.cn> Date: Sun, 22 Oct 2023 21:29:38 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird From: "Logan.Lyu" To: ffmpeg-devel@ffmpeg.org, =?UTF-8?Q?Martin_Storsj=C3=B6?= References: <646d7216-e68d-4a49-821b-f358337797ef@myais.com.cn> Organization: myais In-Reply-To: <646d7216-e68d-4a49-821b-f358337797ef@myais.com.cn> Subject: Re: [FFmpeg-devel] [PATCH 1/4] lavc/aarch64: new optimization for 8-bit hevc_epel_v X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: SGksIE1hcnRpbiwKCkNvdWxkIHlvdSBwbGVhc2UgcmV2aWV3IHRoZXNlIHBhdGNoZXMgYW5kIGxl dCBtZSBrbm93IGlmIHRoZXJlIGFyZSBhbnkgCmNoYW5nZXMgbmVlZGVkLgoKVGhhbmtzLgoKCkxv Z2FuIEx5dQoK5ZyoIDIwMjMvMTAvMTQgMTY6NDUsIExvZ2FuLkx5dSDlhpnpgZM6Cj4gY2hlY2th c20gYmVuY2g6Cj4gcHV0X2hldmNfZXBlbF92NF84X2M6IDc5LjkKPiBwdXRfaGV2Y19lcGVsX3Y0 XzhfbmVvbjogMjUuNwo+IHB1dF9oZXZjX2VwZWxfdjZfOF9jOiAxNTEuNAo+IHB1dF9oZXZjX2Vw ZWxfdjZfOF9uZW9uOiA0Ni40Cj4gcHV0X2hldmNfZXBlbF92OF84X2M6IDI1MC45Cj4gcHV0X2hl dmNfZXBlbF92OF84X25lb246IDQxLjcKPiBwdXRfaGV2Y19lcGVsX3YxMl84X2M6IDU0Mi43Cj4g cHV0X2hldmNfZXBlbF92MTJfOF9uZW9uOiAxMDguNwo+IHB1dF9oZXZjX2VwZWxfdjE2XzhfYzog OTM5LjQKPiBwdXRfaGV2Y19lcGVsX3YxNl84X25lb246IDE2OS4yCj4gcHV0X2hldmNfZXBlbF92 MjRfOF9jOiAyMTA0LjkKPiBwdXRfaGV2Y19lcGVsX3YyNF84X25lb246IDMwNy45Cj4gcHV0X2hl dmNfZXBlbF92MzJfOF9jOiAzNzEzLjkKPiBwdXRfaGV2Y19lcGVsX3YzMl84X25lb246IDUyNC4y Cj4gcHV0X2hldmNfZXBlbF92NDhfOF9jOiA4MTc1LjIKPiBwdXRfaGV2Y19lcGVsX3Y0OF84X25l b246IDExOTcuMgo+IHB1dF9oZXZjX2VwZWxfdjY0XzhfYzogMTYwNDkuNAo+IHB1dF9oZXZjX2Vw ZWxfdjY0XzhfbmVvbjogMjA5NC45Cj4KPiBDby1BdXRob3JlZC1CeTogSi4gRGVra2VyIDxqZGVr QGl0YW5pbXVsLmxpPgo+IFNpZ25lZC1vZmYtYnk6IExvZ2FuIEx5dSA8TG9nYW4uTHl1QG15YWlz LmNvbS5jbj4KPiAtLS0KPiDCoGxpYmF2Y29kZWMvYWFyY2g2NC9oZXZjZHNwX2VwZWxfbmVvbi5T wqDCoMKgIHwgMjIzICsrKysrKysrKysrKysrKysrKysrKysKPiDCoGxpYmF2Y29kZWMvYWFyY2g2 NC9oZXZjZHNwX2luaXRfYWFyY2g2NC5jIHzCoMKgIDUgKwo+IMKgMiBmaWxlcyBjaGFuZ2VkLCAy MjggaW5zZXJ0aW9ucygrKQo+Cj4gZGlmZiAtLWdpdCBhL2xpYmF2Y29kZWMvYWFyY2g2NC9oZXZj ZHNwX2VwZWxfbmVvbi5TIAo+IGIvbGliYXZjb2RlYy9hYXJjaDY0L2hldmNkc3BfZXBlbF9uZW9u LlMKPiBpbmRleCBiNGNhMWU0YzIwLi5lNTQxZGI1NDMwIDEwMDY0NAo+IC0tLSBhL2xpYmF2Y29k ZWMvYWFyY2g2NC9oZXZjZHNwX2VwZWxfbmVvbi5TCj4gKysrIGIvbGliYXZjb2RlYy9hYXJjaDY0 L2hldmNkc3BfZXBlbF9uZW9uLlMKPiBAQCAtMjQzLDYgKzI0MywyMjkgQEAgZnVuY3Rpb24gZmZf aGV2Y19wdXRfaGV2Y19wZWxfcGl4ZWxzNjRfOF9uZW9uLCAKPiBleHBvcnQ9MQo+IMKgwqDCoMKg wqDCoMKgwqAgcmV0Cj4gwqBlbmRmdW5jCj4gwqArCj4gK2Z1bmN0aW9uIGZmX2hldmNfcHV0X2hl dmNfZXBlbF92NF84X25lb24sIGV4cG9ydD0xCj4gK8KgwqDCoMKgwqDCoMKgIGxvYWRfZXBlbF9m aWx0ZXJiIHg1LCB4NAo+ICvCoMKgwqDCoMKgwqDCoCBzdWLCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgeDEsIHgxLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBtb3bCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgeDEwLCAjKE1BWF9QQl9TSVpFICogMikKPiArwqDCoMKgwqDCoMKgwqAgbGRywqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHMxNiwgW3gxXQo+ICvCoMKgwqDCoMKgwqDCoCBsZHLCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgczE3LCBbeDEgLHgyXQo+ICvCoMKgwqDCoMKgwqDCoCBhZGTCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgeDEsIHgxLCB4MiwgbHNsICMxCj4gK8KgwqDCoMKgwqDCoMKgIGxk McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djE4LnN9WzBdLCBbeDFdLCB4Mgo+ICsubWFjcm8g Y2FsYyBzcmMwLCBzcmMxLCBzcmMyLCBzcmMzCj4gK8KgwqDCoMKgwqDCoMKgIGxkMcKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB7XHNyYzNcKCkuc31bMF0sIFt4MV0sIHgyCj4gK8KgwqDCoMKgwqDC oMKgIG1vdmnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHY0LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDC oCBjYWxjX2VwZWxiwqDCoMKgwqDCoCB2NCwgXHNyYzAsIFxzcmMxLCBcc3JjMiwgXHNyYzMKPiAr wqDCoMKgwqDCoMKgwqAgc3Vic8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdzMsIHczLCAjMQo+ICvC oMKgwqDCoMKgwqDCoCBzdDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3Y0LjRofSwgW3gwXSwg eDEwCj4gKy5lbmRtCj4gKzE6wqDCoMKgwqDCoCBjYWxjX2FsbDQKPiArLnB1cmdlbSBjYWxjCj4g KzI6wqDCoMKgwqDCoCByZXQKPiArZW5kZnVuYwo+ICsKPiArZnVuY3Rpb24gZmZfaGV2Y19wdXRf aGV2Y19lcGVsX3Y2XzhfbmVvbiwgZXhwb3J0PTEKPiArwqDCoMKgwqDCoMKgwqAgbG9hZF9lcGVs X2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDCoMKgwqDCoMKgIHN1YsKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB4MSwgeDEsIHgyCj4gK8KgwqDCoMKgwqDCoMKgIG1vdsKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB4MTAsICMoTUFYX1BCX1NJWkUgKiAyIC0gOCkKPiArwqDCoMKgwqDCoMKgwqAgbGRywqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIGQxNiwgW3gxXQo+ICvCoMKgwqDCoMKgwqDCoCBsZHLCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgZDE3LCBbeDEsIHgyXQo+ICvCoMKgwqDCoMKgwqDCoCBhZGTC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgeDEsIHgxLCB4MiwgbHNsICMxCj4gK8KgwqDCoMKgwqDC oMKgIGxkMcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djE4LjhifSwgW3gxXSwgeDIKPiArLm1h Y3JvIGNhbGMgc3JjMCwgc3JjMSwgc3JjMiwgc3JjMwo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAge1xzcmMzXCgpLjhifSwgW3gxXSwgeDIKPiArwqDCoMKgwqDC oMKgwqAgbW92acKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdjQuOGgsICMwCj4gK8KgwqDCoMKgwqDC oMKgIGNhbGNfZXBlbGLCoMKgwqDCoMKgIHY0LCBcc3JjMCwgXHNyYzEsIFxzcmMyLCBcc3JjMwo+ ICvCoMKgwqDCoMKgwqDCoCBzdDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3Y0LmR9WzBdLCBb eDBdLCAjOAo+ICvCoMKgwqDCoMKgwqDCoCBzdWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3Mywg dzMsICMxCj4gK8KgwqDCoMKgwqDCoMKgIHN0McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djQu c31bMl0sIFt4MF0sIHgxMAo+ICsuZW5kbQo+ICsxOsKgwqDCoMKgwqAgY2FsY19hbGw0Cj4gKy5w dXJnZW0gY2FsYwo+ICsyOsKgwqDCoMKgwqAgcmV0Cj4gK2VuZGZ1bmMKPiArCj4gK2Z1bmN0aW9u IGZmX2hldmNfcHV0X2hldmNfZXBlbF92OF84X25lb24sIGV4cG9ydD0xCj4gK8KgwqDCoMKgwqDC oMKgIGxvYWRfZXBlbF9maWx0ZXJiIHg1LCB4NAo+ICvCoMKgwqDCoMKgwqDCoCBzdWLCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgeDEsIHgxLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBtb3bCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgeDEwLCAjKE1BWF9QQl9TSVpFICogMikKPiArwqDCoMKgwqDCoMKg wqAgbGRywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIGQxNiwgW3gxXQo+ICvCoMKgwqDCoMKgwqDC oCBsZHLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgZDE3LCBbeDEsIHgyXQo+ICvCoMKgwqDCoMKg wqDCoCBhZGTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgeDEsIHgxLCB4MiwgbHNsICMxCj4gK8Kg wqDCoMKgwqDCoMKgIGxkMcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djE4LjhifSwgW3gxXSwg eDIKPiArLm1hY3JvIGNhbGMgc3JjMCwgc3JjMSwgc3JjMiwgc3JjMwo+ICvCoMKgwqDCoMKgwqDC oCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge1xzcmMzXCgpLjhifSwgW3gxXSwgeDIKPiAr wqDCoMKgwqDCoMKgwqAgbW92acKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdjQuOGgsICMwCj4gK8Kg wqDCoMKgwqDCoMKgIGNhbGNfZXBlbGLCoMKgwqDCoMKgIHY0LCBcc3JjMCwgXHNyYzEsIFxzcmMy LCBcc3JjMwo+ICvCoMKgwqDCoMKgwqDCoCBzdWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3Mywg dzMsICMxCj4gK8KgwqDCoMKgwqDCoMKgIHN0McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djQu OGh9LCBbeDBdLCB4MTAKPiArLmVuZG0KPiArMTrCoMKgwqDCoMKgIGNhbGNfYWxsNAo+ICsucHVy Z2VtIGNhbGMKPiArMjrCoMKgwqDCoMKgIHJldAo+ICtlbmRmdW5jCj4gKwo+ICtmdW5jdGlvbiBm Zl9oZXZjX3B1dF9oZXZjX2VwZWxfdjEyXzhfbmVvbiwgZXhwb3J0PTEKPiArwqDCoMKgwqDCoMKg wqAgbG9hZF9lcGVsX2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDCoMKgwqDCoMKgIHN1YsKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB4MSwgeDEsIHgyCj4gK8KgwqDCoMKgwqDCoMKgIG1vdsKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB4MTAsICMoTUFYX1BCX1NJWkUgKiAyKQo+ICvCoMKgwqDCoMKgwqDC oCBsZHLCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgcTE2LCBbeDFdCj4gK8KgwqDCoMKgwqDCoMKg IGxkcsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBxMTcsIFt4MSwgeDJdCj4gK8KgwqDCoMKgwqDC oMKgIGFkZMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MSwgeDEsIHgyLCBsc2wgIzEKPiArwqDC oMKgwqDCoMKgwqAgbGQxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHt2MTguMTZifSwgW3gxXSwg eDIKPiArLm1hY3JvIGNhbGMgc3JjMCwgc3JjMSwgc3JjMiwgc3JjMwo+ICvCoMKgwqDCoMKgwqDC oCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge1xzcmMzXCgpLjE2Yn0sIFt4MV0sIHgyCj4g K8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHY0LjhoLCAjMAo+ICvC oMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2NS44aCwgIzAKPiArwqDC oMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKgwqAgdjQsIFxzcmMwLCBcc3JjMSwgXHNyYzIs IFxzcmMzCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGIywqDCoMKgwqAgdjUsIFxzcmMwLCBc c3JjMSwgXHNyYzIsIFxzcmMzCj4gK8KgwqDCoMKgwqDCoMKgIHN0csKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCBxNCwgW3gwXQo+ICvCoMKgwqDCoMKgwqDCoCBzdWJzwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB3MywgdzMsICMxCj4gK8KgwqDCoMKgwqDCoMKgIHN0csKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCBkNSwgW3gwLCAjMTZdCj4gK8KgwqDCoMKgwqDCoMKgIGFkZMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB4MCwgeDAsIHgxMAo+ICsuZW5kbQo+ICsxOsKgwqDCoMKgwqAgY2FsY19hbGw0Cj4g Ky5wdXJnZW0gY2FsYwo+ICsyOsKgwqDCoMKgwqAgcmV0Cj4gK2VuZGZ1bmMKPiArCj4gK2Z1bmN0 aW9uIGZmX2hldmNfcHV0X2hldmNfZXBlbF92MTZfOF9uZW9uLCBleHBvcnQ9MQo+ICvCoMKgwqDC oMKgwqDCoCBsb2FkX2VwZWxfZmlsdGVyYiB4NSwgeDQKPiArwqDCoMKgwqDCoMKgwqAgc3ViwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHgxLCB4MSwgeDIKPiArwqDCoMKgwqDCoMKgwqAgbW92wqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIHgxMCwgIyhNQVhfUEJfU0laRSAqIDIpCj4gK8KgwqDCoMKg wqDCoMKgIGxkcsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBxMTYsIFt4MV0KPiArwqDCoMKgwqDC oMKgwqAgbGRywqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHExNywgW3gxLCB4Ml0KPiArwqDCoMKg wqDCoMKgwqAgYWRkwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHgxLCB4MSwgeDIsIGxzbCAjMQo+ ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YxOC4xNmJ9LCBb eDFdLCB4Mgo+ICsubWFjcm8gY2FsYyBzcmMwLCBzcmMxLCBzcmMyLCBzcmMzCj4gK8KgwqDCoMKg wqDCoMKgIGxkMcKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge1xzcmMzXCgpLjE2Yn0sIFt4MV0sIHgy Cj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHY0LjhoLCAjMAo+ ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2NS44aCwgIzAKPiAr wqDCoMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKgwqAgdjQsIFxzcmMwLCBcc3JjMSwgXHNy YzIsIFxzcmMzCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGIywqDCoMKgwqAgdjUsIFxzcmMw LCBcc3JjMSwgXHNyYzIsIFxzcmMzCj4gK8KgwqDCoMKgwqDCoMKgIHN1YnPCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHczLCB3MywgIzEKPiArwqDCoMKgwqDCoMKgwqAgc3QxwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHt2NC44aCwgdjUuOGh9LCBbeDBdLCB4MTAKPiArLmVuZG0KPiArMTrCoMKgwqDC oMKgIGNhbGNfYWxsNAo+ICsucHVyZ2VtIGNhbGMKPiArMjrCoMKgwqDCoMKgIHJldAo+ICtlbmRm dW5jCj4gKwo+ICtmdW5jdGlvbiBmZl9oZXZjX3B1dF9oZXZjX2VwZWxfdjI0XzhfbmVvbiwgZXhw b3J0PTEKPiArwqDCoMKgwqDCoMKgwqAgbG9hZF9lcGVsX2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDC oMKgwqDCoMKgIHN1YsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MSwgeDEsIHgyCj4gK8KgwqDC oMKgwqDCoMKgIG1vdsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MTAsICMoTUFYX1BCX1NJWkUg KiAyKQo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YxNi44 YiwgdjE3LjhiLCB2MTguOGJ9LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAge3YxOS44YiwgdjIwLjhiLCB2MjEuOGJ9LCBbeDFdLCB4Mgo+ICvC oMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YyMi44YiwgdjIzLjhi LCB2MjQuOGJ9LCBbeDFdLCB4Mgo+ICsubWFjcm8gY2FsYyBzcmMwLCBzcmMxLCBzcmMyLCBzcmMz LCBzcmM0LCBzcmM1LCBzcmM2LCBzcmM3LCBzcmM4LCAKPiBzcmM5LCBzcmMxMCwgc3JjMTEKPiAr wqDCoMKgwqDCoMKgwqAgbGQxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHtcc3JjOVwoKS44Yiwg XHNyYzEwXCgpLjhiLCBcc3JjMTFcKCkuOGJ9LCAKPiBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDC oCBtb3ZpwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB2NC44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAg bW92acKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdjUuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIG1v dmnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHY2LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBjYWxj X2VwZWxiwqDCoMKgwqDCoCB2NCwgXHNyYzAsIFxzcmMzLCBcc3JjNiwgXHNyYzkKPiArwqDCoMKg wqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKgwqAgdjUsIFxzcmMxLCBcc3JjNCwgXHNyYzcsIFxz cmMxMAo+ICvCoMKgwqDCoMKgwqDCoCBjYWxjX2VwZWxiwqDCoMKgwqDCoCB2NiwgXHNyYzIsIFxz cmM1LCBcc3JjOCwgXHNyYzExCj4gK8KgwqDCoMKgwqDCoMKgIHN1YnPCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHczLCB3MywgIzEKPiArwqDCoMKgwqDCoMKgwqAgc3QxwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHt2NC44aC12Ni44aH0sIFt4MF0sIHgxMAo+ICsuZW5kbQo+ICsxOsKgwqDCoMKgwqAg Y2FsY19hbGwxMgo+ICsucHVyZ2VtIGNhbGMKPiArMjrCoMKgwqDCoMKgIHJldAo+ICtlbmRmdW5j Cj4gKwo+ICtmdW5jdGlvbiBmZl9oZXZjX3B1dF9oZXZjX2VwZWxfdjMyXzhfbmVvbiwgZXhwb3J0 PTEKPiArwqDCoMKgwqDCoMKgwqAgbG9hZF9lcGVsX2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDCoMKg wqDCoMKgIHN1YsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MSwgeDEsIHgyCj4gK8KgwqDCoMKg wqDCoMKgIG1vdsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MTAsICMoTUFYX1BCX1NJWkUgKiAy KQo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YxNi4xNmIs IHYxNy4xNmJ9LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAge3YxOC4xNmIsIHYxOS4xNmJ9LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBs ZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YyMC4xNmIsIHYyMS4xNmJ9LCBbeDFdLCB4Mgo+ ICsubWFjcm8gY2FsYyBzcmMwLCBzcmMxLCBzcmMyLCBzcmMzLCBzcmM0LCBzcmM1LCBzcmM2LCBz cmM3Cj4gK8KgwqDCoMKgwqDCoMKgIGxkMcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7XHNyYzZc KCkuMTZiLCBcc3JjN1woKS4xNmJ9LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCB2NC44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgdjUuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHY2LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB2Ny44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDC oMKgwqAgdjQsIFxzcmMwLCBcc3JjMiwgXHNyYzQsIFxzcmM2Cj4gK8KgwqDCoMKgwqDCoMKgIGNh bGNfZXBlbGIywqDCoMKgwqAgdjUsIFxzcmMwLCBcc3JjMiwgXHNyYzQsIFxzcmM2Cj4gK8KgwqDC oMKgwqDCoMKgIGNhbGNfZXBlbGLCoMKgwqDCoMKgIHY2LCBcc3JjMSwgXHNyYzMsIFxzcmM1LCBc c3JjNwo+ICvCoMKgwqDCoMKgwqDCoCBjYWxjX2VwZWxiMsKgwqDCoMKgIHY3LCBcc3JjMSwgXHNy YzMsIFxzcmM1LCBcc3JjNwo+ICvCoMKgwqDCoMKgwqDCoCBzdWJzwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB3MywgdzMsICMxCj4gK8KgwqDCoMKgwqDCoMKgIHN0McKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCB7djQuOGgtdjcuOGh9LCBbeDBdLCB4MTAKPiArLmVuZG0KPiArMTrCoMKgwqDCoMKgIGNh bGNfYWxsOAo+ICsucHVyZ2VtIGNhbGMKPiArMjrCoMKgwqDCoMKgIHJldAo+ICtlbmRmdW5jCj4g Kwo+ICtmdW5jdGlvbiBmZl9oZXZjX3B1dF9oZXZjX2VwZWxfdjQ4XzhfbmVvbiwgZXhwb3J0PTEK PiArwqDCoMKgwqDCoMKgwqAgbG9hZF9lcGVsX2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDCoMKgwqDC oMKgIHN1YsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MSwgeDEsIHgyCj4gK8KgwqDCoMKgwqDC oMKgIG1vdsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB4MTAsICM2NAo+ICvCoMKgwqDCoMKgwqDC oCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YxNi4xNmIsIHYxNy4xNmIsIHYxOC4xNmJ9 LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg e3YxOS4xNmIsIHYyMC4xNmIsIHYyMS4xNmJ9LCBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBs ZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3YyMi4xNmIsIHYyMy4xNmIsIHYyNC4xNmJ9LCBb eDFdLCB4Mgo+ICsubWFjcm8gY2FsYyBzcmMwLCBzcmMxLCBzcmMyLCBzcmMzLCBzcmM0LCBzcmM1 LCBzcmM2LCBzcmM3LCBzcmM4LCAKPiBzcmM5LCBzcmMxMCwgc3JjMTEKPiArwqDCoMKgwqDCoMKg wqAgbGQxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHtcc3JjOVwoKS4xNmIsIFxzcmMxMFwoKS4x NmIsIFxzcmMxMVwoKS4xNmJ9LCAKPiBbeDFdLCB4Mgo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCB2NC44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgdjUuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIHY2LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDC oMKgwqDCoMKgwqDCoCB2Ny44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgdjI4LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCB2MjkuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGLCoMKgwqDC oMKgIHY0LMKgIFxzcmMwLCBcc3JjMywgXHNyYzYsIFxzcmM5Cj4gK8KgwqDCoMKgwqDCoMKgIGNh bGNfZXBlbGIywqDCoMKgwqAgdjUswqAgXHNyYzAsIFxzcmMzLCBcc3JjNiwgXHNyYzkKPiArwqDC oMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKgwqAgdjYswqAgXHNyYzEsIFxzcmM0LCBcc3Jj NywgXHNyYzEwCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGIywqDCoMKgwqAgdjcswqAgXHNy YzEsIFxzcmM0LCBcc3JjNywgXHNyYzEwCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGLCoMKg wqDCoMKgIHYyOCwgXHNyYzIsIFxzcmM1LCBcc3JjOCwgXHNyYzExCj4gK8KgwqDCoMKgwqDCoMKg IGNhbGNfZXBlbGIywqDCoMKgwqAgdjI5LCBcc3JjMiwgXHNyYzUsIFxzcmM4LCBcc3JjMTEKPiAr wqDCoMKgwqDCoMKgwqAgc3QxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHt2NC44aC12Ny44aH0s IFt4MF0sICM2NAo+ICvCoMKgwqDCoMKgwqDCoCBzdWJzwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB3 MywgdzMsICMxCj4gK8KgwqDCoMKgwqDCoMKgIHN0McKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7 djI4LjhoLXYyOS44aH0sIFt4MF0sIHgxMAo+ICsuZW5kbQo+ICsxOsKgwqDCoMKgwqAgY2FsY19h bGwxMgo+ICsucHVyZ2VtIGNhbGMKPiArMjrCoMKgwqDCoMKgIHJldAo+ICtlbmRmdW5jCj4gKwo+ ICtmdW5jdGlvbiBmZl9oZXZjX3B1dF9oZXZjX2VwZWxfdjY0XzhfbmVvbiwgZXhwb3J0PTEKPiAr wqDCoMKgwqDCoMKgwqAgbG9hZF9lcGVsX2ZpbHRlcmIgeDUsIHg0Cj4gK8KgwqDCoMKgwqDCoMKg IHN1YsKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzcCwgc3AsICMzMgo+ICvCoMKgwqDCoMKgwqDC oCBzdDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3Y4LjhiLXYxMS44Yn0sIFtzcF0KPiArwqDC oMKgwqDCoMKgwqAgc3ViwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHgxLCB4MSwgeDIKPiArwqDC oMKgwqDCoMKgwqAgbGQxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHt2MTYuMTZiLCB2MTcuMTZi LCB2MTguMTZiLCB2MTkuMTZifSwgW3gxXSwgeDIKPiArwqDCoMKgwqDCoMKgwqAgbGQxwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgIHt2MjAuMTZiLCB2MjEuMTZiLCB2MjIuMTZiLCB2MjMuMTZifSwg W3gxXSwgeDIKPiArwqDCoMKgwqDCoMKgwqAgbGQxwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHt2 MjQuMTZiLCB2MjUuMTZiLCB2MjYuMTZiLCB2MjcuMTZifSwgW3gxXSwgeDIKPiArLm1hY3JvIGNh bGMgc3JjMCwgc3JjMSwgc3JjMiwgc3JjMywgc3JjNCwgc3JjNSwgc3JjNiwgc3JjNywgc3JjOCwg Cj4gc3JjOSwgc3JjMTAsIHNyYzExLCBzcmMxMiwgc3JjMTMsIHNyYzE0LCBzcmMxNQo+ICvCoMKg wqDCoMKgwqDCoCBsZDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge1xzcmMxMlwoKS4xNmItXHNy YzE1XCgpLjE2Yn0sIFt4MV0sIHgyCj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIHY0LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDCoMKgwqDC oMKgwqDCoCB2NS44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgdjYuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDCoMKgwqDCoMKgwqDC oMKgIHY3LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBtb3ZpwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCB2OC44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg djkuOGgsICMwCj4gK8KgwqDCoMKgwqDCoMKgIG1vdmnCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHYx MC44aCwgIzAKPiArwqDCoMKgwqDCoMKgwqAgbW92acKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdjEx LjhoLCAjMAo+ICvCoMKgwqDCoMKgwqDCoCBjYWxjX2VwZWxiwqDCoMKgwqDCoCB2NCzCoCBcc3Jj MCwgXHNyYzQsIFxzcmM4LMKgIFxzcmMxMgo+ICvCoMKgwqDCoMKgwqDCoCBjYWxjX2VwZWxiMsKg wqDCoMKgIHY1LMKgIFxzcmMwLCBcc3JjNCwgXHNyYzgswqAgXHNyYzEyCj4gK8KgwqDCoMKgwqDC oMKgIGNhbGNfZXBlbGLCoMKgwqDCoMKgIHY2LMKgIFxzcmMxLCBcc3JjNSwgXHNyYzkswqAgXHNy YzEzCj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGIywqDCoMKgwqAgdjcswqAgXHNyYzEsIFxz cmM1LCBcc3JjOSzCoCBcc3JjMTMKPiArwqDCoMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKg wqAgdjgswqAgXHNyYzIsIFxzcmM2LCBcc3JjMTAsIFxzcmMxNAo+ICvCoMKgwqDCoMKgwqDCoCBj YWxjX2VwZWxiMsKgwqDCoMKgIHY5LMKgIFxzcmMyLCBcc3JjNiwgXHNyYzEwLCBcc3JjMTQKPiAr wqDCoMKgwqDCoMKgwqAgY2FsY19lcGVsYsKgwqDCoMKgwqAgdjEwLCBcc3JjMywgXHNyYzcsIFxz cmMxMSwgXHNyYzE1Cj4gK8KgwqDCoMKgwqDCoMKgIGNhbGNfZXBlbGIywqDCoMKgwqAgdjExLCBc c3JjMywgXHNyYzcsIFxzcmMxMSwgXHNyYzE1Cj4gK8KgwqDCoMKgwqDCoMKgIHN0McKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoCB7djQuOGgtdjcuOGh9LCBbeDBdLCAjNjQKPiArwqDCoMKgwqDCoMKg wqAgc3Vic8KgwqDCoMKgwqDCoMKgwqDCoMKgwqAgdzMsIHczLCAjMQo+ICvCoMKgwqDCoMKgwqDC oCBzdDHCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAge3Y4LjhoLXYxMS44aH0sIFt4MF0sICM2NAo+ ICsuZW5kbQo+ICsxOsKgwqDCoMKgwqAgY2FsY19hbGwxNgo+ICsucHVyZ2VtIGNhbGMKPiArMjrC oMKgwqDCoMKgwqDCoMKgIGxkMcKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCB7djguOGItdjExLjhi fSwgW3NwXQo+ICvCoMKgwqDCoMKgwqDCoCBhZGTCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgc3As IHNwLCAjMzIKPiArwqDCoMKgwqDCoMKgwqAgcmV0Cj4gK2VuZGZ1bmMKPiArCj4gwqBmdW5jdGlv biBmZl9oZXZjX3B1dF9oZXZjX2VwZWxfdW5pX3Y0XzhfbmVvbiwgZXhwb3J0PTEKPiDCoMKgwqDC oMKgwqDCoMKgIGxvYWRfZXBlbF9maWx0ZXJiIHg2LCB4NQo+IMKgwqDCoMKgwqDCoMKgwqAgc3Vi wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHgyLCB4MiwgeDMKPiBkaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy9hYXJjaDY0L2hldmNkc3BfaW5pdF9hYXJjaDY0LmMgCj4gYi9saWJhdmNvZGVjL2FhcmNo NjQvaGV2Y2RzcF9pbml0X2FhcmNoNjQuYwo+IGluZGV4IDRjMzc3YTc5NDAuLjgyZTE2MjNhNjcg MTAwNjQ0Cj4gLS0tIGEvbGliYXZjb2RlYy9hYXJjaDY0L2hldmNkc3BfaW5pdF9hYXJjaDY0LmMK PiArKysgYi9saWJhdmNvZGVjL2FhcmNoNjQvaGV2Y2RzcF9pbml0X2FhcmNoNjQuYwo+IEBAIC0x NTYsNiArMTU2LDEwIEBAIE5FT044X0ZOUFJPVE8ocGVsX3BpeGVscywgKGludDE2X3QgKmRzdCwK PiDCoMKgwqDCoMKgwqDCoMKgIGNvbnN0IHVpbnQ4X3QgKnNyYywgcHRyZGlmZl90IHNyY3N0cmlk ZSwKPiDCoMKgwqDCoMKgwqDCoMKgIGludCBoZWlnaHQsIGludHB0cl90IG14LCBpbnRwdHJfdCBt eSwgaW50IHdpZHRoKSwpOwo+IMKgK05FT044X0ZOUFJPVE8oZXBlbF92LCAoaW50MTZfdCAqZHN0 LAo+ICvCoMKgwqDCoMKgwqDCoCBjb25zdCB1aW50OF90ICpzcmMsIHB0cmRpZmZfdCBzcmNzdHJp ZGUsCj4gK8KgwqDCoMKgwqDCoMKgIGludCBoZWlnaHQsIGludHB0cl90IG14LCBpbnRwdHJfdCBt eSwgaW50IHdpZHRoKSwpOwo+ICsKPiDCoE5FT044X0ZOUFJPVE8ocGVsX3VuaV9waXhlbHMsICh1 aW50OF90ICpfZHN0LCBwdHJkaWZmX3QgX2RzdHN0cmlkZSwKPiDCoMKgwqDCoMKgwqDCoMKgIGNv bnN0IHVpbnQ4X3QgKl9zcmMsIHB0cmRpZmZfdCBfc3Jjc3RyaWRlLAo+IMKgwqDCoMKgwqDCoMKg wqAgaW50IGhlaWdodCwgaW50cHRyX3QgbXgsIGludHB0cl90IG15LCBpbnQgd2lkdGgpLCk7Cj4g QEAgLTMwNSw2ICszMDksNyBAQCBhdl9jb2xkIHZvaWQgCj4gZmZfaGV2Y19kc3BfaW5pdF9hYXJj aDY0KEhFVkNEU1BDb250ZXh0ICpjLCBjb25zdCBpbnQgYml0X2RlcHRoKQo+IMKgwqDCoMKgwqDC oMKgwqAgYy0+cHV0X2hldmNfcXBlbF9iaVs5XVswXVsxXcKgwqAgPSAKPiBmZl9oZXZjX3B1dF9o ZXZjX3FwZWxfYmlfaDE2XzhfbmVvbjsKPiDCoMKgwqDCoMKgwqDCoMKgwqAgTkVPTjhfRk5BU1NJ R04oYy0+cHV0X2hldmNfZXBlbCwgMCwgMCwgcGVsX3BpeGVscywpOwo+ICvCoMKgwqDCoMKgwqDC oCBORU9OOF9GTkFTU0lHTihjLT5wdXRfaGV2Y19lcGVsLCAxLCAwLCBlcGVsX3YsKTsKPiDCoMKg wqDCoMKgwqDCoMKgIE5FT044X0ZOQVNTSUdOKGMtPnB1dF9oZXZjX3FwZWwsIDAsIDAsIHBlbF9w aXhlbHMsKTsKPiDCoMKgwqDCoMKgwqDCoMKgIE5FT044X0ZOQVNTSUdOKGMtPnB1dF9oZXZjX2Vw ZWxfdW5pLCAwLCAwLCBwZWxfdW5pX3BpeGVscywpOwo+IMKgwqDCoMKgwqDCoMKgwqAgTkVPTjhf Rk5BU1NJR04oYy0+cHV0X2hldmNfZXBlbF91bmksIDEsIDAsIGVwZWxfdW5pX3YsKTsKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZmZtcGVnLWRldmVsIG1h aWxpbmcgbGlzdApmZm1wZWctZGV2ZWxAZmZtcGVnLm9yZwpodHRwczovL2ZmbXBlZy5vcmcvbWFp bG1hbi9saXN0aW5mby9mZm1wZWctZGV2ZWwKClRvIHVuc3Vic2NyaWJlLCB2aXNpdCBsaW5rIGFi b3ZlLCBvciBlbWFpbApmZm1wZWctZGV2ZWwtcmVxdWVzdEBmZm1wZWcub3JnIHdpdGggc3ViamVj dCAidW5zdWJzY3JpYmUiLgo=