From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 99EC045B50; Wed, 16 Oct 2024 10:22:15 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2D8F64066E; Wed, 16 Oct 2024 10:22:02 +0200 (CEST) Received: from mxhk.zte.com.cn (mxhk.zte.com.cn [63.216.63.40]) by mails.dpdk.org (Postfix) with ESMTP id 4328E40616 for ; Wed, 16 Oct 2024 10:21:59 +0200 (CEST) Received: from mxct.zte.com.cn (unknown [192.168.251.13]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mxhk.zte.com.cn (FangMail) with ESMTPS id 4XT3pq0kDVz8RV7d for ; Wed, 16 Oct 2024 16:21:55 +0800 (CST) Received: from mse-fl1.zte.com.cn (unknown [10.5.228.132]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mxct.zte.com.cn (FangMail) with ESMTPS id 4XT3pc6rxpz52SGn; Wed, 16 Oct 2024 16:21:44 +0800 (CST) Received: from szxlzmapp01.zte.com.cn ([10.5.231.85]) by mse-fl1.zte.com.cn with SMTP id 49G8LXDZ059272; Wed, 16 Oct 2024 16:21:33 +0800 (+08) (envelope-from wang.junlong1@zte.com.cn) Received: from localhost.localdomain (unknown [192.168.6.15]) by smtp (Zmail) with SMTP; Wed, 16 Oct 2024 16:21:36 +0800 X-Zmail-TransId: 3e81670f7790003-8951b From: Junlong Wang To: dev@dpdk.org Cc: stephen@networkplumber.org, ferruh.yigit@amd.com, wang.yong19@zte.com.cn, Junlong Wang Subject: [PATCH v6 4/9] net/zxdh: add msg chan and msg hwlock init Date: Wed, 16 Oct 2024 16:18:19 +0800 Message-ID: <20241016081824.1808433-3-wang.junlong1@zte.com.cn> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20241016081824.1808433-1-wang.junlong1@zte.com.cn> References: <20241016081647.1808333-2-wang.junlong1@zte.com.cn> <20241016081824.1808433-1-wang.junlong1@zte.com.cn> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: multipart/mixed; boundary="=====_001_next=====" X-MAIL: mse-fl1.zte.com.cn 49G8LXDZ059272 X-Fangmail-Anti-Spam-Filtered: true X-Fangmail-MID-QID: 670F779F.000/4XT3pq0kDVz8RV7d 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 --=====_001_next===== Content-Type: multipart/related; boundary="=====_002_next=====" --=====_002_next===== Content-Type: multipart/alternative; boundary="=====_003_next=====" --=====_003_next===== Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 QWRkIG1zZyBjaGFubmVsIGFuZCBod2xvY2sgaW5pdCBpbXBsZW1lbnRhdGlvbi4NCg0KU2lnbmVk LW9mZi1ieTogSnVubG9uZyBXYW5nIDx3YW5nLmp1bmxvbmcxQHp0ZS5jb20uY24+DQotLS0NCiBk cml2ZXJzL25ldC96eGRoL21lc29uLmJ1aWxkICAgfCAgIDEgKw0KIGRyaXZlcnMvbmV0L3p4ZGgv enhkaF9ldGhkZXYuYyB8ICAxNSArKysNCiBkcml2ZXJzL25ldC96eGRoL3p4ZGhfZXRoZGV2Lmgg fCAgIDEgKw0KIGRyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuYyAgICB8IDE2MSArKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysNCiBkcml2ZXJzL25ldC96eGRoL3p4ZGhfbXNnLmggICAg fCAgNjUgKysrKysrKysrKysrKw0KIDUgZmlsZXMgY2hhbmdlZCwgMjQzIGluc2VydGlvbnMoKykN CiBjcmVhdGUgbW9kZSAxMDA2NDQgZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5jDQogY3JlYXRl IG1vZGUgMTAwNjQ0IGRyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuaA0KDQpkaWZmIC0tZ2l0IGEv ZHJpdmVycy9uZXQvenhkaC9tZXNvbi5idWlsZCBiL2RyaXZlcnMvbmV0L3p4ZGgvbWVzb24uYnVp bGQNCmluZGV4IDdkYjRlN2JjNzEuLjJlMGM4ZmRkYWUgMTAwNjQ0DQotLS0gYS9kcml2ZXJzL25l dC96eGRoL21lc29uLmJ1aWxkDQorKysgYi9kcml2ZXJzL25ldC96eGRoL21lc29uLmJ1aWxkDQpA QCAtMTYsNCArMTYsNSBAQCBlbmRpZg0KIHNvdXJjZXMgPSBmaWxlcygNCiAgICAgICAgICd6eGRo X2V0aGRldi5jJywNCiAgICAgICAgICd6eGRoX3BjaS5jJywNCisgICAgICAgICd6eGRoX21zZy5j JywNCiApDQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvenhkaC96eGRoX2V0aGRldi5jIGIvZHJp dmVycy9uZXQvenhkaC96eGRoX2V0aGRldi5jDQppbmRleCBmMzRiMmFmN2IzLi5lNjlkMTFlOWZk IDEwMDY0NA0KLS0tIGEvZHJpdmVycy9uZXQvenhkaC96eGRoX2V0aGRldi5jDQorKysgYi9kcml2 ZXJzL25ldC96eGRoL3p4ZGhfZXRoZGV2LmMNCkBAIC05LDYgKzksNyBAQA0KICNpbmNsdWRlICJ6 eGRoX2V0aGRldi5oIg0KICNpbmNsdWRlICJ6eGRoX2xvZ3MuaCINCiAjaW5jbHVkZSAienhkaF9w Y2kuaCINCisjaW5jbHVkZSAienhkaF9tc2cuaCINCiANCiBzdHJ1Y3QgenhkaF9od19pbnRlcm5h bCB6eGRoX2h3X2ludGVybmFsW1JURV9NQVhfRVRIUE9SVFNdOw0KIA0KQEAgLTgzLDkgKzg0LDIz IEBAIHN0YXRpYyBpbnQgenhkaF9ldGhfZGV2X2luaXQoc3RydWN0IHJ0ZV9ldGhfZGV2ICpldGhf ZGV2KQ0KIAlpZiAocmV0IDwgMCkNCiAJCWdvdG8gZXJyX3p4ZGhfaW5pdDsNCiANCisJcmV0ID0g enhkaF9tc2dfY2hhbl9pbml0KCk7DQorCWlmIChyZXQgPCAwKSB7DQorCQlQTURfSU5JVF9MT0co RVJSLCAiRmFpbGVkIHRvIGluaXQgYmFyIG1zZyBjaGFuIik7DQorCQlnb3RvIGVycl96eGRoX2lu aXQ7DQorCX0NCisJaHctPm1zZ19jaGFuX2luaXQgPSAxOw0KKw0KKwlyZXQgPSB6eGRoX21zZ19j aGFuX2h3bG9ja19pbml0KGV0aF9kZXYpOw0KKwlpZiAocmV0ICE9IDApIHsNCisJCVBNRF9JTklU X0xPRyhFUlIsICJ6eGRoX21zZ19jaGFuX2h3bG9ja19pbml0IGZhaWxlZCByZXQgJWQiLCByZXQp Ow0KKwkJZ290byBlcnJfenhkaF9pbml0Ow0KKwl9DQorDQogCXJldHVybiByZXQ7DQogDQogZXJy X3p4ZGhfaW5pdDoNCisJenhkaF9iYXJfbXNnX2NoYW5fZXhpdCgpOw0KIAlydGVfZnJlZShldGhf ZGV2LT5kYXRhLT5tYWNfYWRkcnMpOw0KIAlldGhfZGV2LT5kYXRhLT5tYWNfYWRkcnMgPSBOVUxM Ow0KIAlyZXR1cm4gcmV0Ow0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9ldGhk ZXYuaCBiL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9ldGhkZXYuaA0KaW5kZXggMThkOTkxNjcxMy4u MjRlYjNhNWNhMCAxMDA2NDQNCi0tLSBhL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9ldGhkZXYuaA0K KysrIGIvZHJpdmVycy9uZXQvenhkaC96eGRoX2V0aGRldi5oDQpAQCAtNTEsNiArNTEsNyBAQCBz dHJ1Y3QgenhkaF9odyB7DQogCXVpbnQ4X3QgbWFjX2FkZHJbUlRFX0VUSEVSX0FERFJfTEVOXTsN CiAJdWludDhfdCBkdXBsZXg7DQogCXVpbnQ4X3QgaXNfcGY7DQorCXVpbnQ4X3QgbXNnX2NoYW5f aW5pdDsNCiB9Ow0KIA0KICNpZmRlZiBfX2NwbHVzcGx1cw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMv bmV0L3p4ZGgvenhkaF9tc2cuYyBiL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuYw0KbmV3IGZp bGUgbW9kZSAxMDA2NDQNCmluZGV4IDAwMDAwMDAwMDAuLmYyMzg3ODAzZmMNCi0tLSAvZGV2L251 bGwNCisrKyBiL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuYw0KQEAgLTAsMCArMSwxNjEgQEAN CisvKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTMtQ2xhdXNlDQorICogQ29weXJpZ2h0 KGMpIDIwMjQgWlRFIENvcnBvcmF0aW9uDQorICovDQorDQorI2luY2x1ZGUgPHN0ZGJvb2wuaD4N CisNCisjaW5jbHVkZSA8cnRlX2NvbW1vbi5oPg0KKyNpbmNsdWRlIDxydGVfbWVtY3B5Lmg+DQor I2luY2x1ZGUgPHB0aHJlYWQuaD4NCisjaW5jbHVkZSA8cnRlX2N5Y2xlcy5oPg0KKyNpbmNsdWRl IDxpbnR0eXBlcy5oPg0KKyNpbmNsdWRlIDxydGVfbWFsbG9jLmg+DQorDQorI2luY2x1ZGUgInp4 ZGhfZXRoZGV2LmgiDQorI2luY2x1ZGUgInp4ZGhfbG9ncy5oIg0KKyNpbmNsdWRlICJ6eGRoX21z Zy5oIg0KKw0KKyNkZWZpbmUgUkVQU19JTkZPX0ZMQUdfVVNBQkxFICAweDAwDQorI2RlZmluZSBC QVJfU0VRSURfTlVNX01BWCAgMjU2DQorDQorI2RlZmluZSBaWERIX0JBUjBfSU5ERVggIDANCisN CisjZGVmaW5lIFBDSUVJRF9JU19QRl9NQVNLICAgKDB4MDgwMCkNCisjZGVmaW5lIFBDSUVJRF9Q Rl9JRFhfTUFTSyAgKDB4MDcwMCkNCisjZGVmaW5lIFBDSUVJRF9WRl9JRFhfTUFTSyAgKDB4MDBm ZikNCisjZGVmaW5lIFBDSUVJRF9FUF9JRFhfTUFTSyAgKDB4NzAwMCkNCisvKiBQQ0lFSUQgYml0 IGZpZWxkIG9mZnNldCAqLw0KKyNkZWZpbmUgUENJRUlEX1BGX0lEWF9PRkZTRVQgICg4KQ0KKyNk ZWZpbmUgUENJRUlEX0VQX0lEWF9PRkZTRVQgICgxMikNCisNCisjZGVmaW5lIE1VTFRJUExZX0JZ XzgoeCkgICAgKCh4KSA8PCAzKQ0KKyNkZWZpbmUgTVVMVElQTFlfQllfMzIoeCkgICAoKHgpIDw8 IDUpDQorI2RlZmluZSBNVUxUSVBMWV9CWV8yNTYoeCkgICgoeCkgPDwgOCkNCisNCisjZGVmaW5l IE1BWF9FUF9OVU0gICAgICAgICAgKDQpDQorI2RlZmluZSBNQVhfSEFSRF9TUElOTE9DS19OVU0g ICAgICAgICg1MTEpDQorDQorI2RlZmluZSBCQVIwX1NQSU5MT0NLX09GRlNFVCAgICAgICAgICAg ICAgICgweDQwMDApDQorI2RlZmluZSBGV19TSFJEX09GRlNFVCAgICAgICAgICAgICAgICAgICAg ICgweDUwMDApDQorI2RlZmluZSBGV19TSFJEX0lOTkVSX0hXX0xBQkVMX1BBVCAgICAgICAgICgw eDgwMCkNCisjZGVmaW5lIEhXX0xBQkVMX09GRlNFVCAgICAgICAgICAgICAgICAgICAgKEZXX1NI UkRfT0ZGU0VUICsgRldfU0hSRF9JTk5FUl9IV19MQUJFTF9QQVQpDQorDQorc3RydWN0IGRldl9z dGF0IHsNCisJYm9vbCBpc19tcGZfc2Nhbm5lZDsNCisJYm9vbCBpc19yZXNfaW5pdDsNCisJaW50 MTZfdCBkZXZfY250OyAvKiBwcm9iZSBjbnQgKi8NCit9Ow0KK3N0cnVjdCBkZXZfc3RhdCBnX2Rl dl9zdGF0ID0gezB9Ow0KKw0KK3N0cnVjdCBzZXFpZF9pdGVtIHsNCisJdm9pZCAqcmVwc19hZGRy Ow0KKwl1aW50MTZfdCBpZDsNCisJdWludDE2X3QgYnVmZmVyX2xlbjsNCisJdWludDE2X3QgZmxh ZzsNCit9Ow0KKw0KK3N0cnVjdCBzZXFpZF9yaW5nIHsNCisJdWludDE2X3QgY3VyX2lkOw0KKwlw dGhyZWFkX3NwaW5sb2NrX3QgbG9jazsNCisJc3RydWN0IHNlcWlkX2l0ZW0gcmVwc19pbmZvX3Ri bFtCQVJfU0VRSURfTlVNX01BWF07DQorfTsNCitzdHJ1Y3Qgc2VxaWRfcmluZyBnX3NlcWlkX3Jp bmcgPSB7MH07DQorDQorc3RhdGljIHVpbnQxNl90IHBjaWVfaWRfdG9faGFyZF9sb2NrKHVpbnQx Nl90IHNyY19wY2llaWQsIHVpbnQ4X3QgZHN0KQ0KK3sNCisJdWludDE2X3QgbG9ja19pZCA9IDA7 DQorCXVpbnQxNl90IHBmX2lkeCA9IChzcmNfcGNpZWlkICYgUENJRUlEX1BGX0lEWF9NQVNLKSA+ PiBQQ0lFSURfUEZfSURYX09GRlNFVDsNCisJdWludDE2X3QgZXBfaWR4ID0gKHNyY19wY2llaWQg JiBQQ0lFSURfRVBfSURYX01BU0spID4+IFBDSUVJRF9FUF9JRFhfT0ZGU0VUOw0KKw0KKwlzd2l0 Y2ggKGRzdCkgew0KKwkvKiBtc2cgdG8gcmlzYyAqLw0KKwljYXNlIE1TR19DSEFOX0VORF9SSVND Og0KKwkJbG9ja19pZCA9IE1VTFRJUExZX0JZXzgoZXBfaWR4KSArIHBmX2lkeDsNCisJCWJyZWFr Ow0KKwkvKiBtc2cgdG8gcGYvdmYgKi8NCisJY2FzZSBNU0dfQ0hBTl9FTkRfVkY6DQorCWNhc2Ug TVNHX0NIQU5fRU5EX1BGOg0KKwkJbG9ja19pZCA9IE1VTFRJUExZX0JZXzgoZXBfaWR4KSArIHBm X2lkeCArIE1VTFRJUExZX0JZXzgoMSArIE1BWF9FUF9OVU0pOw0KKwkJYnJlYWs7DQorCWRlZmF1 bHQ6DQorCQlsb2NrX2lkID0gMDsNCisJCWJyZWFrOw0KKwl9DQorCWlmIChsb2NrX2lkID49IE1B WF9IQVJEX1NQSU5MT0NLX05VTSkNCisJCWxvY2tfaWQgPSAwOw0KKw0KKwlyZXR1cm4gbG9ja19p ZDsNCit9DQorDQorc3RhdGljIHZvaWQgbGFiZWxfd3JpdGUodWludDY0X3QgbGFiZWxfbG9ja19h ZGRyLCB1aW50MzJfdCBsb2NrX2lkLCB1aW50MTZfdCB2YWx1ZSkNCit7DQorCSoodm9sYXRpbGUg dWludDE2X3QgKikobGFiZWxfbG9ja19hZGRyICsgbG9ja19pZCAqIDIpID0gdmFsdWU7DQorfQ0K Kw0KK3N0YXRpYyB2b2lkIHNwaW5sb2NrX3dyaXRlKHVpbnQ2NF90IHZpcnRfbG9ja19hZGRyLCB1 aW50MzJfdCBsb2NrX2lkLCB1aW50OF90IGRhdGEpDQorew0KKwkqKHZvbGF0aWxlIHVpbnQ4X3Qg KikoKHVpbnQ2NF90KXZpcnRfbG9ja19hZGRyICsgKHVpbnQ2NF90KWxvY2tfaWQpID0gZGF0YTsN Cit9DQorDQorc3RhdGljIGludDMyX3QgenhkaF9zcGlubG9ja191bmxvY2sodWludDMyX3Qgdmly dF9sb2NrX2lkLCB1aW50NjRfdCB2aXJ0X2FkZHIsIHVpbnQ2NF90IGxhYmVsX2FkZHIpDQorew0K KwlsYWJlbF93cml0ZSgodWludDY0X3QpbGFiZWxfYWRkciwgdmlydF9sb2NrX2lkLCAwKTsNCisJ c3BpbmxvY2tfd3JpdGUodmlydF9hZGRyLCB2aXJ0X2xvY2tfaWQsIDApOw0KKwlyZXR1cm4gMDsN Cit9DQorDQorLyoqDQorICogRnVuOiBQRiBpbml0IGhhcmRfc3BpbmxvY2sgYWRkcg0KKyAqLw0K K3N0YXRpYyBpbnQgYmFyX2NoYW5fcGZfaW5pdF9zcGlubG9jayh1aW50MTZfdCBwY2llX2lkLCB1 aW50NjRfdCBiYXJfYmFzZV9hZGRyKQ0KK3sNCisJaW50IGxvY2tfaWQgPSBwY2llX2lkX3RvX2hh cmRfbG9jayhwY2llX2lkLCBNU0dfQ0hBTl9FTkRfUklTQyk7DQorDQorCXp4ZGhfc3BpbmxvY2tf dW5sb2NrKGxvY2tfaWQsIGJhcl9iYXNlX2FkZHIgKyBCQVIwX1NQSU5MT0NLX09GRlNFVCwNCisJ CQliYXJfYmFzZV9hZGRyICsgSFdfTEFCRUxfT0ZGU0VUKTsNCisJbG9ja19pZCA9IHBjaWVfaWRf dG9faGFyZF9sb2NrKHBjaWVfaWQsIE1TR19DSEFOX0VORF9WRik7DQorCXp4ZGhfc3BpbmxvY2tf dW5sb2NrKGxvY2tfaWQsIGJhcl9iYXNlX2FkZHIgKyBCQVIwX1NQSU5MT0NLX09GRlNFVCwNCisJ CQliYXJfYmFzZV9hZGRyICsgSFdfTEFCRUxfT0ZGU0VUKTsNCisJcmV0dXJuIDA7DQorfQ0KKw0K K2ludCB6eGRoX21zZ19jaGFuX2h3bG9ja19pbml0KHN0cnVjdCBydGVfZXRoX2RldiAqZGV2KQ0K K3sNCisJc3RydWN0IHp4ZGhfaHcgKmh3ID0gZGV2LT5kYXRhLT5kZXZfcHJpdmF0ZTsNCisNCisJ aWYgKCFody0+aXNfcGYpDQorCQlyZXR1cm4gMDsNCisJcmV0dXJuIGJhcl9jaGFuX3BmX2luaXRf c3BpbmxvY2soaHctPnBjaWVfaWQsICh1aW50NjRfdCkoaHctPmJhcl9hZGRyW1pYREhfQkFSMF9J TkRFWF0pKTsNCit9DQorDQorcHRocmVhZF9zcGlubG9ja190IGNoYW5fbG9jazsNCitpbnQgenhk aF9tc2dfY2hhbl9pbml0KHZvaWQpDQorew0KKwl1aW50MTZfdCBzZXFfaWQgPSAwOw0KKw0KKwln X2Rldl9zdGF0LmRldl9jbnQrKzsNCisJaWYgKGdfZGV2X3N0YXQuaXNfcmVzX2luaXQpDQorCQly ZXR1cm4gQkFSX01TR19PSzsNCisNCisJcHRocmVhZF9zcGluX2luaXQoJmNoYW5fbG9jaywgMCk7 DQorCWdfc2VxaWRfcmluZy5jdXJfaWQgPSAwOw0KKwlwdGhyZWFkX3NwaW5faW5pdCgmZ19zZXFp ZF9yaW5nLmxvY2ssIDApOw0KKw0KKwlmb3IgKHNlcV9pZCA9IDA7IHNlcV9pZCA8IEJBUl9TRVFJ RF9OVU1fTUFYOyBzZXFfaWQrKykgew0KKwkJc3RydWN0IHNlcWlkX2l0ZW0gKnJlcHNfaW5mbyA9 ICZnX3NlcWlkX3JpbmcucmVwc19pbmZvX3RibFtzZXFfaWRdOw0KKw0KKwkJcmVwc19pbmZvLT5p ZCA9IHNlcV9pZDsNCisJCXJlcHNfaW5mby0+ZmxhZyA9IFJFUFNfSU5GT19GTEFHX1VTQUJMRTsN CisJfQ0KKwlnX2Rldl9zdGF0LmlzX3Jlc19pbml0ID0gdHJ1ZTsNCisJcmV0dXJuIEJBUl9NU0df T0s7DQorfQ0KKw0KK2ludCB6eGRoX2Jhcl9tc2dfY2hhbl9leGl0KHZvaWQpDQorew0KKwlpZiAo IWdfZGV2X3N0YXQuaXNfcmVzX2luaXQgfHwgKC0tZ19kZXZfc3RhdC5kZXZfY250ID4gMCkpDQor CQlyZXR1cm4gQkFSX01TR19PSzsNCisNCisJZ19kZXZfc3RhdC5pc19yZXNfaW5pdCA9IGZhbHNl Ow0KKwlyZXR1cm4gQkFSX01TR19PSzsNCit9DQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9uZXQvenhk aC96eGRoX21zZy5oIGIvZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5oDQpuZXcgZmlsZSBtb2Rl IDEwMDY0NA0KaW5kZXggMDAwMDAwMDAwMC4uYTYxOWU2YWUyMQ0KLS0tIC9kZXYvbnVsbA0KKysr IGIvZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5oDQpAQCAtMCwwICsxLDY1IEBADQorLyogU1BE WC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0zLUNsYXVzZQ0KKyAqIENvcHlyaWdodChjKSAyMDI0 IFpURSBDb3Jwb3JhdGlvbg0KKyAqLw0KKw0KKyNpZm5kZWYgX1pYREhfTVNHX0hfDQorI2RlZmlu ZSBfWlhESF9NU0dfSF8NCisNCisjaWZkZWYgX19jcGx1c3BsdXMNCitleHRlcm4gIkMiIHsNCisj ZW5kaWYNCisNCisjaW5jbHVkZSA8c3RkaW50Lmg+DQorDQorI2luY2x1ZGUgPGV0aGRldl9kcml2 ZXIuaD4NCisNCitlbnVtIERSSVZFUl9UWVBFIHsNCisJTVNHX0NIQU5fRU5EX01QRiA9IDAsDQor CU1TR19DSEFOX0VORF9QRiwNCisJTVNHX0NIQU5fRU5EX1ZGLA0KKwlNU0dfQ0hBTl9FTkRfUklT QywNCit9Ow0KKw0KK2VudW0gQkFSX01TR19SVE4gew0KKwlCQVJfTVNHX09LID0gMCwNCisJQkFS X01TR19FUlJfTVNHSUQsDQorCUJBUl9NU0dfRVJSX05VTEwsDQorCUJBUl9NU0dfRVJSX1RZUEUs IC8qIE1lc3NhZ2UgdHlwZSBleGNlcHRpb24gKi8NCisJQkFSX01TR19FUlJfTU9EVUxFLCAvKiBN b2R1bGUgSUQgZXhjZXB0aW9uICovDQorCUJBUl9NU0dfRVJSX0JPRFlfTlVMTCwgLyogTWVzc2Fn ZSBib2R5IGV4Y2VwdGlvbiAqLw0KKwlCQVJfTVNHX0VSUl9MRU4sIC8qIE1lc3NhZ2UgbGVuZ3Ro IGV4Y2VwdGlvbiAqLw0KKwlCQVJfTVNHX0VSUl9USU1FX09VVCwgLyogTWVzc2FnZSBzZW5kaW5n IGxlbmd0aCB0b28gbG9uZyAqLw0KKwlCQVJfTVNHX0VSUl9OT1RfUkVBRFksIC8qIEFibm9ybWFs IG1lc3NhZ2Ugc2VuZGluZyBjb25kaXRpb25zKi8NCisJQkFSX01FR19FUlJfTlVMTF9GVU5DLCAv KiBFbXB0eSByZWNlaXZlIHByb2Nlc3NpbmcgZnVuY3Rpb24gcG9pbnRlciovDQorCUJBUl9NU0df RVJSX1JFUEVBVF9SRUdJU1RFUiwgLyogTW9kdWxlIGR1cGxpY2F0ZSByZWdpc3RyYXRpb24qLw0K KwlCQVJfTVNHX0VSUl9VTkdJU1RFUiwgLyogUmVwZWF0ZWQgZGVyZWdpc3RyYXRpb24qLw0KKwkv KioNCisJICogVGhlIHNlbmRpbmcgaW50ZXJmYWNlIHBhcmFtZXRlciBib3VuZGFyeSBzdHJ1Y3R1 cmUgcG9pbnRlciBpcyBlbXB0eQ0KKwkgKi8NCisJQkFSX01TR19FUlJfTlVMTF9QQVJBLA0KKwlC QVJfTVNHX0VSUl9SRVBTQlVGRl9MRU4sIC8qIFRoZSBsZW5ndGggb2YgcmVwc19idWZmIGlzIHRv byBzaG9ydCovDQorCS8qKg0KKwkgKiBVbmFibGUgdG8gZmluZCB0aGUgY29ycmVzcG9uZGluZyBt ZXNzYWdlIHByb2Nlc3NpbmcgZnVuY3Rpb24gZm9yIHRoaXMgbW9kdWxlDQorCSAqLw0KKwlCQVJf TVNHX0VSUl9NT0RVTEVfTk9FWElTVCwNCisJLyoqDQorCSAqIFRoZSB2aXJ0dWFsIGFkZHJlc3Mg aW4gdGhlIHBhcmFtZXRlcnMgcGFzc2VkIGluIGJ5IHRoZSBzZW5kaW5nIGludGVyZmFjZSBpcyBl bXB0eQ0KKwkgKi8NCisJQkFSX01TR19FUlJfVklSVEFERFJfTlVMTCwNCisJQkFSX01TR19FUlJf UkVQTFksIC8qIHN5bmMgbXNnIHJlc3BfZXJyb3IgKi8NCisJQkFSX01TR19FUlJfTVBGX05PVF9T Q0FOTkVELA0KKwlCQVJfTVNHX0VSUl9LRVJORUxfUkVBRFksDQorCUJBUl9NU0dfRVJSX1VTUl9S RVRfRVJSLA0KKwlCQVJfTVNHX0VSUl9FUlJfUENJRUlELA0KKwlCQVJfTVNHX0VSUl9TT0NLRVQs IC8qIG5ldGxpbmsgc29ja3RlIGVyciAqLw0KK307DQorDQoraW50IHp4ZGhfbXNnX2NoYW5faW5p dCh2b2lkKTsNCitpbnQgenhkaF9iYXJfbXNnX2NoYW5fZXhpdCh2b2lkKTsNCitpbnQgenhkaF9t c2dfY2hhbl9od2xvY2tfaW5pdChzdHJ1Y3QgcnRlX2V0aF9kZXYgKmRldik7DQorDQorI2lmZGVm IF9fY3BsdXNwbHVzDQorfQ0KKyNlbmRpZg0KKw0KKyNlbmRpZiAvKiBfWlhESF9NU0dfSF8gICov DQotLSANCjIuMjcuMA== --=====_003_next===== Content-Type: text/html ; charset="UTF-8" Content-Transfer-Encoding: base64 QWRkJm5ic3A7bXNnJm5ic3A7Y2hhbm5lbCZuYnNwO2FuZCZuYnNwO2h3bG9jayZuYnNwO2luaXQm bmJzcDtpbXBsZW1lbnRhdGlvbi48YnIgLz4NPGJyIC8+U2lnbmVkLW9mZi1ieTombmJzcDtKdW5s b25nJm5ic3A7V2FuZyZuYnNwOyZsdDt3YW5nLmp1bmxvbmcxQHp0ZS5jb20uY24mZ3Q7DTxiciAv Pi0tLTxiciAvPiZuYnNwO2RyaXZlcnMvbmV0L3p4ZGgvbWVzb24uYnVpbGQmbmJzcDsmbmJzcDsm bmJzcDt8Jm5ic3A7Jm5ic3A7Jm5ic3A7MSZuYnNwOys8YnIgLz4mbmJzcDtkcml2ZXJzL25ldC96 eGRoL3p4ZGhfZXRoZGV2LmMmbmJzcDt8Jm5ic3A7Jm5ic3A7MTUmbmJzcDsrKys8YnIgLz4mbmJz cDtkcml2ZXJzL25ldC96eGRoL3p4ZGhfZXRoZGV2LmgmbmJzcDt8Jm5ic3A7Jm5ic3A7Jm5ic3A7 MSZuYnNwOys8YnIgLz4mbmJzcDtkcml2ZXJzL25ldC96eGRoL3p4ZGhfbXNnLmMmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDt8Jm5ic3A7MTYxJm5ic3A7KysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrPGJyIC8+Jm5ic3A7ZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5oJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7fCZuYnNwOyZuYnNwOzY1Jm5ic3A7KysrKysrKysrKysrKzxiciAvPiZuYnNw OzUmbmJzcDtmaWxlcyZuYnNwO2NoYW5nZWQsJm5ic3A7MjQzJm5ic3A7aW5zZXJ0aW9ucygrKTxi ciAvPiZuYnNwO2NyZWF0ZSZuYnNwO21vZGUmbmJzcDsxMDA2NDQmbmJzcDtkcml2ZXJzL25ldC96 eGRoL3p4ZGhfbXNnLmM8YnIgLz4mbmJzcDtjcmVhdGUmbmJzcDttb2RlJm5ic3A7MTAwNjQ0Jm5i c3A7ZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5oPGJyIC8+DTxiciAvPmRpZmYmbmJzcDstLWdp dCZuYnNwO2EvZHJpdmVycy9uZXQvenhkaC9tZXNvbi5idWlsZCZuYnNwO2IvZHJpdmVycy9uZXQv enhkaC9tZXNvbi5idWlsZDxiciAvPmluZGV4Jm5ic3A7N2RiNGU3YmM3MS4uMmUwYzhmZGRhZSZu YnNwOzEwMDY0NDxiciAvPi0tLSZuYnNwO2EvZHJpdmVycy9uZXQvenhkaC9tZXNvbi5idWlsZDxi ciAvPisrKyZuYnNwO2IvZHJpdmVycy9uZXQvenhkaC9tZXNvbi5idWlsZDxiciAvPkBAJm5ic3A7 LTE2LDQmbmJzcDsrMTYsNSZuYnNwO0BAJm5ic3A7ZW5kaWY8YnIgLz4mbmJzcDtzb3VyY2VzJm5i c3A7PSZuYnNwO2ZpbGVzKDxiciAvPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZhcG9zO3p4ZGhfZXRoZGV2LmMmYXBvczssPGJyIC8+Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7JmFwb3M7enhk aF9wY2kuYyZhcG9zOyw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7JmFwb3M7enhkaF9tc2cuYyZhcG9zOyw8YnIgLz4mbmJzcDspPGJyIC8+ZGlm ZiZuYnNwOy0tZ2l0Jm5ic3A7YS9kcml2ZXJzL25ldC96eGRoL3p4ZGhfZXRoZGV2LmMmbmJzcDti L2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9ldGhkZXYuYzxiciAvPmluZGV4Jm5ic3A7ZjM0YjJhZjdi My4uZTY5ZDExZTlmZCZuYnNwOzEwMDY0NDxiciAvPi0tLSZuYnNwO2EvZHJpdmVycy9uZXQvenhk aC96eGRoX2V0aGRldi5jPGJyIC8+KysrJm5ic3A7Yi9kcml2ZXJzL25ldC96eGRoL3p4ZGhfZXRo ZGV2LmM8YnIgLz5AQCZuYnNwOy05LDYmbmJzcDsrOSw3Jm5ic3A7QEA8YnIgLz4mbmJzcDsjaW5j bHVkZSZuYnNwOyZxdW90O3p4ZGhfZXRoZGV2LmgmcXVvdDsNPGJyIC8+Jm5ic3A7I2luY2x1ZGUm bmJzcDsmcXVvdDt6eGRoX2xvZ3MuaCZxdW90Ow08YnIgLz4mbmJzcDsjaW5jbHVkZSZuYnNwOyZx dW90O3p4ZGhfcGNpLmgmcXVvdDsNPGJyIC8+KyNpbmNsdWRlJm5ic3A7JnF1b3Q7enhkaF9tc2cu aCZxdW90Ow08YnIgLz4mbmJzcDsNPGJyIC8+Jm5ic3A7c3RydWN0Jm5ic3A7enhkaF9od19pbnRl cm5hbCZuYnNwO3p4ZGhfaHdfaW50ZXJuYWxbUlRFX01BWF9FVEhQT1JUU107PGJyIC8+Jm5ic3A7 DTxiciAvPkBAJm5ic3A7LTgzLDkmbmJzcDsrODQsMjMmbmJzcDtAQCZuYnNwO3N0YXRpYyZuYnNw O2ludCZuYnNwO3p4ZGhfZXRoX2Rldl9pbml0KHN0cnVjdCZuYnNwO3J0ZV9ldGhfZGV2Jm5ic3A7 KmV0aF9kZXYpPGJyIC8+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYmbmJzcDsocmV0 Jm5ic3A7Jmx0OyZuYnNwOzApPGJyIC8+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Z290byZuYnNwO2Vycl96eGRoX2luaXQ7PGJyIC8+Jm5ic3A7 DTxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXQmbmJzcDs9Jm5ic3A7enhkaF9tc2df Y2hhbl9pbml0KCk7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2lmJm5ic3A7KHJldCZu YnNwOyZsdDsmbmJzcDswKSZuYnNwO3s8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7UE1EX0lOSVRfTE9HKEVSUiwmbmJzcDsmcXVvdDtGYWlsZWQm bmJzcDt0byZuYnNwO2luaXQmbmJzcDtiYXImbmJzcDttc2cmbmJzcDtjaGFuJnF1b3Q7KTs8YnIg Lz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Z290byZu YnNwO2Vycl96eGRoX2luaXQ7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO308YnIgLz4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aHctJmd0O21zZ19jaGFuX2luaXQmbmJzcDs9Jm5ic3A7 MTs8YnIgLz4rPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3JldCZuYnNwOz0mbmJzcDt6 eGRoX21zZ19jaGFuX2h3bG9ja19pbml0KGV0aF9kZXYpOzxiciAvPismbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDtpZiZuYnNwOyhyZXQmbmJzcDshPSZuYnNwOzApJm5ic3A7ezxiciAvPismbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtQTURfSU5JVF9MT0coRVJS LCZuYnNwOyZxdW90O3p4ZGhfbXNnX2NoYW5faHdsb2NrX2luaXQmbmJzcDtmYWlsZWQmbmJzcDty ZXQmbmJzcDslZCZxdW90OywmbmJzcDtyZXQpOzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtnb3RvJm5ic3A7ZXJyX3p4ZGhfaW5pdDs8YnIgLz4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTxiciAvPis8YnIgLz4mbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDtyZXR1cm4mbmJzcDtyZXQ7PGJyIC8+Jm5ic3A7DTxiciAvPiZuYnNwO2Vycl96 eGRoX2luaXQ6PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3p4ZGhfYmFyX21zZ19jaGFu X2V4aXQoKTs8YnIgLz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtydGVfZnJlZShldGhf ZGV2LSZndDtkYXRhLSZndDttYWNfYWRkcnMpOzxiciAvPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO2V0aF9kZXYtJmd0O2RhdGEtJmd0O21hY19hZGRycyZuYnNwOz0mbmJzcDtOVUxMOzxi ciAvPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3JldHVybiZuYnNwO3JldDs8YnIgLz5k aWZmJm5ic3A7LS1naXQmbmJzcDthL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9ldGhkZXYuaCZuYnNw O2IvZHJpdmVycy9uZXQvenhkaC96eGRoX2V0aGRldi5oPGJyIC8+aW5kZXgmbmJzcDsxOGQ5OTE2 NzEzLi4yNGViM2E1Y2EwJm5ic3A7MTAwNjQ0PGJyIC8+LS0tJm5ic3A7YS9kcml2ZXJzL25ldC96 eGRoL3p4ZGhfZXRoZGV2Lmg8YnIgLz4rKysmbmJzcDtiL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9l dGhkZXYuaDxiciAvPkBAJm5ic3A7LTUxLDYmbmJzcDsrNTEsNyZuYnNwO0BAJm5ic3A7c3RydWN0 Jm5ic3A7enhkaF9odyZuYnNwO3s8YnIgLz4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt1 aW50OF90Jm5ic3A7bWFjX2FkZHJbUlRFX0VUSEVSX0FERFJfTEVOXTs8YnIgLz4mbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDt1aW50OF90Jm5ic3A7ZHVwbGV4OzxiciAvPiZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwO3VpbnQ4X3QmbmJzcDtpc19wZjs8YnIgLz4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7dWludDhfdCZuYnNwO21zZ19jaGFuX2luaXQ7PGJyIC8+Jm5ic3A7fTs8YnIg Lz4mbmJzcDsNPGJyIC8+Jm5ic3A7I2lmZGVmJm5ic3A7X19jcGx1c3BsdXM8YnIgLz5kaWZmJm5i c3A7LS1naXQmbmJzcDthL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuYyZuYnNwO2IvZHJpdmVy cy9uZXQvenhkaC96eGRoX21zZy5jPGJyIC8+bmV3Jm5ic3A7ZmlsZSZuYnNwO21vZGUmbmJzcDsx MDA2NDQ8YnIgLz5pbmRleCZuYnNwOzAwMDAwMDAwMDAuLmYyMzg3ODAzZmM8YnIgLz4tLS0mbmJz cDsvZGV2L251bGw8YnIgLz4rKysmbmJzcDtiL2RyaXZlcnMvbmV0L3p4ZGgvenhkaF9tc2cuYzxi ciAvPkBAJm5ic3A7LTAsMCZuYnNwOysxLDE2MSZuYnNwO0BAPGJyIC8+Ky8qJm5ic3A7U1BEWC1M aWNlbnNlLUlkZW50aWZpZXI6Jm5ic3A7QlNELTMtQ2xhdXNlPGJyIC8+KyZuYnNwOyombmJzcDtD b3B5cmlnaHQoYykmbmJzcDsyMDI0Jm5ic3A7WlRFJm5ic3A7Q29ycG9yYXRpb248YnIgLz4rJm5i c3A7Ki88YnIgLz4rPGJyIC8+KyNpbmNsdWRlJm5ic3A7Jmx0O3N0ZGJvb2wuaCZndDsNPGJyIC8+ KzxiciAvPisjaW5jbHVkZSZuYnNwOyZsdDtydGVfY29tbW9uLmgmZ3Q7DTxiciAvPisjaW5jbHVk ZSZuYnNwOyZsdDtydGVfbWVtY3B5LmgmZ3Q7DTxiciAvPisjaW5jbHVkZSZuYnNwOyZsdDtwdGhy ZWFkLmgmZ3Q7DTxiciAvPisjaW5jbHVkZSZuYnNwOyZsdDtydGVfY3ljbGVzLmgmZ3Q7DTxiciAv PisjaW5jbHVkZSZuYnNwOyZsdDtpbnR0eXBlcy5oJmd0Ow08YnIgLz4rI2luY2x1ZGUmbmJzcDsm bHQ7cnRlX21hbGxvYy5oJmd0Ow08YnIgLz4rPGJyIC8+KyNpbmNsdWRlJm5ic3A7JnF1b3Q7enhk aF9ldGhkZXYuaCZxdW90Ow08YnIgLz4rI2luY2x1ZGUmbmJzcDsmcXVvdDt6eGRoX2xvZ3MuaCZx dW90Ow08YnIgLz4rI2luY2x1ZGUmbmJzcDsmcXVvdDt6eGRoX21zZy5oJnF1b3Q7DTxiciAvPis8 YnIgLz4rI2RlZmluZSZuYnNwO1JFUFNfSU5GT19GTEFHX1VTQUJMRSZuYnNwOyZuYnNwOzB4MDA8 YnIgLz4rI2RlZmluZSZuYnNwO0JBUl9TRVFJRF9OVU1fTUFYJm5ic3A7Jm5ic3A7MjU2PGJyIC8+ KzxiciAvPisjZGVmaW5lJm5ic3A7WlhESF9CQVIwX0lOREVYJm5ic3A7Jm5ic3A7MDxiciAvPis8 YnIgLz4rI2RlZmluZSZuYnNwO1BDSUVJRF9JU19QRl9NQVNLJm5ic3A7Jm5ic3A7Jm5ic3A7KDB4 MDgwMCk8YnIgLz4rI2RlZmluZSZuYnNwO1BDSUVJRF9QRl9JRFhfTUFTSyZuYnNwOyZuYnNwOygw eDA3MDApPGJyIC8+KyNkZWZpbmUmbmJzcDtQQ0lFSURfVkZfSURYX01BU0smbmJzcDsmbmJzcDso MHgwMGZmKTxiciAvPisjZGVmaW5lJm5ic3A7UENJRUlEX0VQX0lEWF9NQVNLJm5ic3A7Jm5ic3A7 KDB4NzAwMCk8YnIgLz4rLyombmJzcDtQQ0lFSUQmbmJzcDtiaXQmbmJzcDtmaWVsZCZuYnNwO29m ZnNldCZuYnNwOyovPGJyIC8+KyNkZWZpbmUmbmJzcDtQQ0lFSURfUEZfSURYX09GRlNFVCZuYnNw OyZuYnNwOyg4KTxiciAvPisjZGVmaW5lJm5ic3A7UENJRUlEX0VQX0lEWF9PRkZTRVQmbmJzcDsm bmJzcDsoMTIpPGJyIC8+KzxiciAvPisjZGVmaW5lJm5ic3A7TVVMVElQTFlfQllfOCh4KSZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOygoeCkmbmJzcDsmbHQ7Jmx0OyZuYnNwOzMpPGJyIC8+KyNkZWZp bmUmbmJzcDtNVUxUSVBMWV9CWV8zMih4KSZuYnNwOyZuYnNwOyZuYnNwOygoeCkmbmJzcDsmbHQ7 Jmx0OyZuYnNwOzUpPGJyIC8+KyNkZWZpbmUmbmJzcDtNVUxUSVBMWV9CWV8yNTYoeCkmbmJzcDsm bmJzcDsoKHgpJm5ic3A7Jmx0OyZsdDsmbmJzcDs4KTxiciAvPis8YnIgLz4rI2RlZmluZSZuYnNw O01BWF9FUF9OVU0mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsoNCk8YnIgLz4rI2RlZmluZSZuYnNwO01BWF9IQVJEX1NQSU5MT0NLX05V TSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyg1MTEpPGJy IC8+KzxiciAvPisjZGVmaW5lJm5ic3A7QkFSMF9TUElOTE9DS19PRkZTRVQmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsoMHg0MDAwKTxiciAvPisjZGVmaW5lJm5ic3A7RldfU0hSRF9P RkZTRVQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsoMHg1MDAwKTxiciAvPisjZGVmaW5lJm5ic3A7RldfU0hSRF9JTk5F Ul9IV19MQUJFTF9QQVQmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsoMHg4MDApPGJyIC8+KyNkZWZpbmUmbmJzcDtIV19MQUJFTF9PRkZTRVQmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsoRldfU0hSRF9PRkZTRVQmbmJzcDsrJm5ic3A7RldfU0hSRF9JTk5FUl9IV19MQUJFTF9QQVQp PGJyIC8+KzxiciAvPitzdHJ1Y3QmbmJzcDtkZXZfc3RhdCZuYnNwO3s8YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Ym9vbCZuYnNwO2lzX21wZl9zY2FubmVkOzxiciAvPismbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDtib29sJm5ic3A7aXNfcmVzX2luaXQ7PGJyIC8+KyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwO2ludDE2X3QmbmJzcDtkZXZfY250OyZuYnNwOy8qJm5ic3A7cHJvYmUmbmJzcDtj bnQmbmJzcDsqLzxiciAvPit9OzxiciAvPitzdHJ1Y3QmbmJzcDtkZXZfc3RhdCZuYnNwO2dfZGV2 X3N0YXQmbmJzcDs9Jm5ic3A7ezB9OzxiciAvPis8YnIgLz4rc3RydWN0Jm5ic3A7c2VxaWRfaXRl bSZuYnNwO3s8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7dm9pZCZuYnNwOypyZXBzX2Fk ZHI7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3VpbnQxNl90Jm5ic3A7aWQ7PGJyIC8+ KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3VpbnQxNl90Jm5ic3A7YnVmZmVyX2xlbjs8YnIgLz4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7dWludDE2X3QmbmJzcDtmbGFnOzxiciAvPit9OzxiciAv Pis8YnIgLz4rc3RydWN0Jm5ic3A7c2VxaWRfcmluZyZuYnNwO3s8YnIgLz4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7dWludDE2X3QmbmJzcDtjdXJfaWQ7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO3B0aHJlYWRfc3BpbmxvY2tfdCZuYnNwO2xvY2s7PGJyIC8+KyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwO3N0cnVjdCZuYnNwO3NlcWlkX2l0ZW0mbmJzcDtyZXBzX2luZm9fdGJsW0JBUl9T RVFJRF9OVU1fTUFYXTs8YnIgLz4rfTs8YnIgLz4rc3RydWN0Jm5ic3A7c2VxaWRfcmluZyZuYnNw O2dfc2VxaWRfcmluZyZuYnNwOz0mbmJzcDt7MH07PGJyIC8+KzxiciAvPitzdGF0aWMmbmJzcDt1 aW50MTZfdCZuYnNwO3BjaWVfaWRfdG9faGFyZF9sb2NrKHVpbnQxNl90Jm5ic3A7c3JjX3BjaWVp ZCwmbmJzcDt1aW50OF90Jm5ic3A7ZHN0KTxiciAvPit7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwO3VpbnQxNl90Jm5ic3A7bG9ja19pZCZuYnNwOz0mbmJzcDswOzxiciAvPismbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDt1aW50MTZfdCZuYnNwO3BmX2lkeCZuYnNwOz0mbmJzcDsoc3JjX3Bj aWVpZCZuYnNwOyZhbXA7Jm5ic3A7UENJRUlEX1BGX0lEWF9NQVNLKSZuYnNwOyZndDsmZ3Q7Jm5i c3A7UENJRUlEX1BGX0lEWF9PRkZTRVQ7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3Vp bnQxNl90Jm5ic3A7ZXBfaWR4Jm5ic3A7PSZuYnNwOyhzcmNfcGNpZWlkJm5ic3A7JmFtcDsmbmJz cDtQQ0lFSURfRVBfSURYX01BU0spJm5ic3A7Jmd0OyZndDsmbmJzcDtQQ0lFSURfRVBfSURYX09G RlNFVDs8YnIgLz4rPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3N3aXRjaCZuYnNwOyhk c3QpJm5ic3A7ezxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsvKiZuYnNwO21zZyZuYnNw O3RvJm5ic3A7cmlzYyZuYnNwOyovPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2Nhc2Um bmJzcDtNU0dfQ0hBTl9FTkRfUklTQzo8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7bG9ja19pZCZuYnNwOz0mbmJzcDtNVUxUSVBMWV9CWV84KGVw X2lkeCkmbmJzcDsrJm5ic3A7cGZfaWR4OzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDticmVhazs8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7LyombmJzcDttc2cmbmJzcDt0byZuYnNwO3BmL3ZmJm5ic3A7Ki88YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Y2FzZSZuYnNwO01TR19DSEFOX0VORF9WRjo8YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Y2FzZSZuYnNwO01TR19DSEFOX0VORF9QRjo8YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7bG9ja19pZCZuYnNwOz0mbmJz cDtNVUxUSVBMWV9CWV84KGVwX2lkeCkmbmJzcDsrJm5ic3A7cGZfaWR4Jm5ic3A7KyZuYnNwO01V TFRJUExZX0JZXzgoMSZuYnNwOysmbmJzcDtNQVhfRVBfTlVNKTs8YnIgLz4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7YnJlYWs7PGJyIC8+KyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwO2RlZmF1bHQ6PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO2xvY2tfaWQmbmJzcDs9Jm5ic3A7MDs8YnIgLz4rJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7YnJlYWs7PGJyIC8+KyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO308YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7aWYm bmJzcDsobG9ja19pZCZuYnNwOyZndDs9Jm5ic3A7TUFYX0hBUkRfU1BJTkxPQ0tfTlVNKTxiciAv PismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtsb2NrX2lk Jm5ic3A7PSZuYnNwOzA7PGJyIC8+KzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXR1 cm4mbmJzcDtsb2NrX2lkOzxiciAvPit9PGJyIC8+KzxiciAvPitzdGF0aWMmbmJzcDt2b2lkJm5i c3A7bGFiZWxfd3JpdGUodWludDY0X3QmbmJzcDtsYWJlbF9sb2NrX2FkZHIsJm5ic3A7dWludDMy X3QmbmJzcDtsb2NrX2lkLCZuYnNwO3VpbnQxNl90Jm5ic3A7dmFsdWUpPGJyIC8+K3s8YnIgLz4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Kih2b2xhdGlsZSZuYnNwO3VpbnQxNl90Jm5ic3A7Kiko bGFiZWxfbG9ja19hZGRyJm5ic3A7KyZuYnNwO2xvY2tfaWQmbmJzcDsqJm5ic3A7MikmbmJzcDs9 Jm5ic3A7dmFsdWU7PGJyIC8+K308YnIgLz4rPGJyIC8+K3N0YXRpYyZuYnNwO3ZvaWQmbmJzcDtz cGlubG9ja193cml0ZSh1aW50NjRfdCZuYnNwO3ZpcnRfbG9ja19hZGRyLCZuYnNwO3VpbnQzMl90 Jm5ic3A7bG9ja19pZCwmbmJzcDt1aW50OF90Jm5ic3A7ZGF0YSk8YnIgLz4rezxiciAvPismbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsqKHZvbGF0aWxlJm5ic3A7dWludDhfdCZuYnNwOyopKCh1aW50 NjRfdCl2aXJ0X2xvY2tfYWRkciZuYnNwOysmbmJzcDsodWludDY0X3QpbG9ja19pZCkmbmJzcDs9 Jm5ic3A7ZGF0YTs8YnIgLz4rfTxiciAvPis8YnIgLz4rc3RhdGljJm5ic3A7aW50MzJfdCZuYnNw O3p4ZGhfc3BpbmxvY2tfdW5sb2NrKHVpbnQzMl90Jm5ic3A7dmlydF9sb2NrX2lkLCZuYnNwO3Vp bnQ2NF90Jm5ic3A7dmlydF9hZGRyLCZuYnNwO3VpbnQ2NF90Jm5ic3A7bGFiZWxfYWRkcik8YnIg Lz4rezxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtsYWJlbF93cml0ZSgodWludDY0X3Qp bGFiZWxfYWRkciwmbmJzcDt2aXJ0X2xvY2tfaWQsJm5ic3A7MCk7PGJyIC8+KyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwO3NwaW5sb2NrX3dyaXRlKHZpcnRfYWRkciwmbmJzcDt2aXJ0X2xvY2tfaWQs Jm5ic3A7MCk7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3JldHVybiZuYnNwOzA7PGJy IC8+K308YnIgLz4rPGJyIC8+Ky8qKjxiciAvPismbmJzcDsqJm5ic3A7RnVuOiZuYnNwO1BGJm5i c3A7aW5pdCZuYnNwO2hhcmRfc3BpbmxvY2smbmJzcDthZGRyPGJyIC8+KyZuYnNwOyovPGJyIC8+ K3N0YXRpYyZuYnNwO2ludCZuYnNwO2Jhcl9jaGFuX3BmX2luaXRfc3BpbmxvY2sodWludDE2X3Qm bmJzcDtwY2llX2lkLCZuYnNwO3VpbnQ2NF90Jm5ic3A7YmFyX2Jhc2VfYWRkcik8YnIgLz4rezxi ciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpbnQmbmJzcDtsb2NrX2lkJm5ic3A7PSZuYnNw O3BjaWVfaWRfdG9faGFyZF9sb2NrKHBjaWVfaWQsJm5ic3A7TVNHX0NIQU5fRU5EX1JJU0MpOzxi ciAvPis8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7enhkaF9zcGlubG9ja191bmxvY2so bG9ja19pZCwmbmJzcDtiYXJfYmFzZV9hZGRyJm5ic3A7KyZuYnNwO0JBUjBfU1BJTkxPQ0tfT0ZG U0VULDxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtiYXJfYmFzZV9hZGRyJm5ic3A7KyZuYnNwO0hXX0xB QkVMX09GRlNFVCk7PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2xvY2tfaWQmbmJzcDs9 Jm5ic3A7cGNpZV9pZF90b19oYXJkX2xvY2socGNpZV9pZCwmbmJzcDtNU0dfQ0hBTl9FTkRfVkYp OzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDt6eGRoX3NwaW5sb2NrX3VubG9jayhsb2Nr X2lkLCZuYnNwO2Jhcl9iYXNlX2FkZHImbmJzcDsrJm5ic3A7QkFSMF9TUElOTE9DS19PRkZTRVQs PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO2Jhcl9iYXNlX2FkZHImbmJzcDsrJm5ic3A7SFdfTEFCRUxf T0ZGU0VUKTs8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuJm5ic3A7MDs8YnIg Lz4rfTxiciAvPis8YnIgLz4raW50Jm5ic3A7enhkaF9tc2dfY2hhbl9od2xvY2tfaW5pdChzdHJ1 Y3QmbmJzcDtydGVfZXRoX2RldiZuYnNwOypkZXYpPGJyIC8+K3s8YnIgLz4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7c3RydWN0Jm5ic3A7enhkaF9odyZuYnNwOypodyZuYnNwOz0mbmJzcDtkZXYt Jmd0O2RhdGEtJmd0O2Rldl9wcml2YXRlOzxiciAvPis8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7aWYmbmJzcDsoIWh3LSZndDtpc19wZik8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuJm5ic3A7MDs8YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7cmV0dXJuJm5ic3A7YmFyX2NoYW5fcGZfaW5pdF9zcGlubG9jayhody0m Z3Q7cGNpZV9pZCwmbmJzcDsodWludDY0X3QpKGh3LSZndDtiYXJfYWRkcltaWERIX0JBUjBfSU5E RVhdKSk7PGJyIC8+K308YnIgLz4rPGJyIC8+K3B0aHJlYWRfc3BpbmxvY2tfdCZuYnNwO2NoYW5f bG9jazs8YnIgLz4raW50Jm5ic3A7enhkaF9tc2dfY2hhbl9pbml0KHZvaWQpPGJyIC8+K3s8YnIg Lz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7dWludDE2X3QmbmJzcDtzZXFfaWQmbmJzcDs9Jm5i c3A7MDs8YnIgLz4rPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2dfZGV2X3N0YXQuZGV2 X2NudCsrOzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpZiZuYnNwOyhnX2Rldl9zdGF0 LmlzX3Jlc19pbml0KTxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDtyZXR1cm4mbmJzcDtCQVJfTVNHX09LOzxiciAvPis8YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7cHRocmVhZF9zcGluX2luaXQoJmFtcDtjaGFuX2xvY2ssJm5ic3A7MCk7 PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO2dfc2VxaWRfcmluZy5jdXJfaWQmbmJzcDs9 Jm5ic3A7MDs8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cHRocmVhZF9zcGluX2luaXQo JmFtcDtnX3NlcWlkX3JpbmcubG9jaywmbmJzcDswKTs8YnIgLz4rPGJyIC8+KyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwO2ZvciZuYnNwOyhzZXFfaWQmbmJzcDs9Jm5ic3A7MDsmbmJzcDtzZXFfaWQm bmJzcDsmbHQ7Jm5ic3A7QkFSX1NFUUlEX05VTV9NQVg7Jm5ic3A7c2VxX2lkKyspJm5ic3A7ezxi ciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtzdHJ1 Y3QmbmJzcDtzZXFpZF9pdGVtJm5ic3A7KnJlcHNfaW5mbyZuYnNwOz0mbmJzcDsmYW1wO2dfc2Vx aWRfcmluZy5yZXBzX2luZm9fdGJsW3NlcV9pZF07PGJyIC8+KzxiciAvPismbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtyZXBzX2luZm8tJmd0O2lkJm5ic3A7 PSZuYnNwO3NlcV9pZDs8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7cmVwc19pbmZvLSZndDtmbGFnJm5ic3A7PSZuYnNwO1JFUFNfSU5GT19GTEFH X1VTQUJMRTs8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7fTxiciAvPismbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDtnX2Rldl9zdGF0LmlzX3Jlc19pbml0Jm5ic3A7PSZuYnNwO3RydWU7PGJy IC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO3JldHVybiZuYnNwO0JBUl9NU0dfT0s7PGJyIC8+ K308YnIgLz4rPGJyIC8+K2ludCZuYnNwO3p4ZGhfYmFyX21zZ19jaGFuX2V4aXQodm9pZCk8YnIg Lz4rezxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtpZiZuYnNwOyghZ19kZXZfc3RhdC5p c19yZXNfaW5pdCZuYnNwO3x8Jm5ic3A7KC0tZ19kZXZfc3RhdC5kZXZfY250Jm5ic3A7Jmd0OyZu YnNwOzApKTxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDtyZXR1cm4mbmJzcDtCQVJfTVNHX09LOzxiciAvPis8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Z19kZXZfc3RhdC5pc19yZXNfaW5pdCZuYnNwOz0mbmJzcDtmYWxzZTs8YnIgLz4r Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7cmV0dXJuJm5ic3A7QkFSX01TR19PSzs8YnIgLz4rfTxi ciAvPmRpZmYmbmJzcDstLWdpdCZuYnNwO2EvZHJpdmVycy9uZXQvenhkaC96eGRoX21zZy5oJm5i c3A7Yi9kcml2ZXJzL25ldC96eGRoL3p4ZGhfbXNnLmg8YnIgLz5uZXcmbmJzcDtmaWxlJm5ic3A7 bW9kZSZuYnNwOzEwMDY0NDxiciAvPmluZGV4Jm5ic3A7MDAwMDAwMDAwMC4uYTYxOWU2YWUyMTxi ciAvPi0tLSZuYnNwOy9kZXYvbnVsbDxiciAvPisrKyZuYnNwO2IvZHJpdmVycy9uZXQvenhkaC96 eGRoX21zZy5oPGJyIC8+QEAmbmJzcDstMCwwJm5ic3A7KzEsNjUmbmJzcDtAQDxiciAvPisvKiZu YnNwO1NQRFgtTGljZW5zZS1JZGVudGlmaWVyOiZuYnNwO0JTRC0zLUNsYXVzZTxiciAvPismbmJz cDsqJm5ic3A7Q29weXJpZ2h0KGMpJm5ic3A7MjAyNCZuYnNwO1pURSZuYnNwO0NvcnBvcmF0aW9u PGJyIC8+KyZuYnNwOyovPGJyIC8+KzxiciAvPisjaWZuZGVmJm5ic3A7X1pYREhfTVNHX0hfPGJy IC8+KyNkZWZpbmUmbmJzcDtfWlhESF9NU0dfSF88YnIgLz4rPGJyIC8+KyNpZmRlZiZuYnNwO19f Y3BsdXNwbHVzPGJyIC8+K2V4dGVybiZuYnNwOyZxdW90O0MmcXVvdDsmbmJzcDt7PGJyIC8+KyNl bmRpZjxiciAvPis8YnIgLz4rI2luY2x1ZGUmbmJzcDsmbHQ7c3RkaW50LmgmZ3Q7DTxiciAvPis8 YnIgLz4rI2luY2x1ZGUmbmJzcDsmbHQ7ZXRoZGV2X2RyaXZlci5oJmd0Ow08YnIgLz4rPGJyIC8+ K2VudW0mbmJzcDtEUklWRVJfVFlQRSZuYnNwO3s8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7TVNHX0NIQU5fRU5EX01QRiZuYnNwOz0mbmJzcDswLDxiciAvPismbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDtNU0dfQ0hBTl9FTkRfUEYsPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO01T R19DSEFOX0VORF9WRiw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7TVNHX0NIQU5fRU5E X1JJU0MsPGJyIC8+K307PGJyIC8+KzxiciAvPitlbnVtJm5ic3A7QkFSX01TR19SVE4mbmJzcDt7 PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0JBUl9NU0dfT0smbmJzcDs9Jm5ic3A7MCw8 YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfTVNHSUQsPGJyIC8+KyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwO0JBUl9NU0dfRVJSX05VTEwsPGJyIC8+KyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwO0JBUl9NU0dfRVJSX1RZUEUsJm5ic3A7LyombmJzcDtNZXNzYWdlJm5ic3A7 dHlwZSZuYnNwO2V4Y2VwdGlvbiZuYnNwOyovPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw O0JBUl9NU0dfRVJSX01PRFVMRSwmbmJzcDsvKiZuYnNwO01vZHVsZSZuYnNwO0lEJm5ic3A7ZXhj ZXB0aW9uJm5ic3A7Ki88YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJf Qk9EWV9OVUxMLCZuYnNwOy8qJm5ic3A7TWVzc2FnZSZuYnNwO2JvZHkmbmJzcDtleGNlcHRpb24m bmJzcDsqLzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtCQVJfTVNHX0VSUl9MRU4sJm5i c3A7LyombmJzcDtNZXNzYWdlJm5ic3A7bGVuZ3RoJm5ic3A7ZXhjZXB0aW9uJm5ic3A7Ki88YnIg Lz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfVElNRV9PVVQsJm5ic3A7Lyom bmJzcDtNZXNzYWdlJm5ic3A7c2VuZGluZyZuYnNwO2xlbmd0aCZuYnNwO3RvbyZuYnNwO2xvbmcm bmJzcDsqLzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtCQVJfTVNHX0VSUl9OT1RfUkVB RFksJm5ic3A7LyombmJzcDtBYm5vcm1hbCZuYnNwO21lc3NhZ2UmbmJzcDtzZW5kaW5nJm5ic3A7 Y29uZGl0aW9ucyovPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0JBUl9NRUdfRVJSX05V TExfRlVOQywmbmJzcDsvKiZuYnNwO0VtcHR5Jm5ic3A7cmVjZWl2ZSZuYnNwO3Byb2Nlc3Npbmcm bmJzcDtmdW5jdGlvbiZuYnNwO3BvaW50ZXIqLzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDtCQVJfTVNHX0VSUl9SRVBFQVRfUkVHSVNURVIsJm5ic3A7LyombmJzcDtNb2R1bGUmbmJzcDtk dXBsaWNhdGUmbmJzcDtyZWdpc3RyYXRpb24qLzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDtCQVJfTVNHX0VSUl9VTkdJU1RFUiwmbmJzcDsvKiZuYnNwO1JlcGVhdGVkJm5ic3A7ZGVyZWdp c3RyYXRpb24qLzxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsvKio8YnIgLz4rJm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7KiZuYnNwO1RoZSZuYnNwO3NlbmRpbmcmbmJzcDtpbnRl cmZhY2UmbmJzcDtwYXJhbWV0ZXImbmJzcDtib3VuZGFyeSZuYnNwO3N0cnVjdHVyZSZuYnNwO3Bv aW50ZXImbmJzcDtpcyZuYnNwO2VtcHR5PGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyovPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0JBUl9NU0dfRVJSX05VTExfUEFS QSw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfUkVQU0JVRkZfTEVO LCZuYnNwOy8qJm5ic3A7VGhlJm5ic3A7bGVuZ3RoJm5ic3A7b2YmbmJzcDtyZXBzX2J1ZmYmbmJz cDtpcyZuYnNwO3RvbyZuYnNwO3Nob3J0Ki88YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 LyoqPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyombmJzcDtVbmFibGUmbmJz cDt0byZuYnNwO2ZpbmQmbmJzcDt0aGUmbmJzcDtjb3JyZXNwb25kaW5nJm5ic3A7bWVzc2FnZSZu YnNwO3Byb2Nlc3NpbmcmbmJzcDtmdW5jdGlvbiZuYnNwO2ZvciZuYnNwO3RoaXMmbmJzcDttb2R1 bGU8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Ki88YnIgLz4rJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfTU9EVUxFX05PRVhJU1QsPGJyIC8+KyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOy8qKjxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsq Jm5ic3A7VGhlJm5ic3A7dmlydHVhbCZuYnNwO2FkZHJlc3MmbmJzcDtpbiZuYnNwO3RoZSZuYnNw O3BhcmFtZXRlcnMmbmJzcDtwYXNzZWQmbmJzcDtpbiZuYnNwO2J5Jm5ic3A7dGhlJm5ic3A7c2Vu ZGluZyZuYnNwO2ludGVyZmFjZSZuYnNwO2lzJm5ic3A7ZW1wdHk8YnIgLz4rJm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Ki88YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01T R19FUlJfVklSVEFERFJfTlVMTCw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01T R19FUlJfUkVQTFksJm5ic3A7LyombmJzcDtzeW5jJm5ic3A7bXNnJm5ic3A7cmVzcF9lcnJvciZu YnNwOyovPGJyIC8+KyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwO0JBUl9NU0dfRVJSX01QRl9OT1Rf U0NBTk5FRCw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfS0VSTkVM X1JFQURZLDxiciAvPismbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDtCQVJfTVNHX0VSUl9VU1JfUkVU X0VSUiw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfRVJSX1BDSUVJ RCw8YnIgLz4rJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7QkFSX01TR19FUlJfU09DS0VULCZuYnNw Oy8qJm5ic3A7bmV0bGluayZuYnNwO3NvY2t0ZSZuYnNwO2VyciZuYnNwOyovPGJyIC8+K307PGJy IC8+KzxiciAvPitpbnQmbmJzcDt6eGRoX21zZ19jaGFuX2luaXQodm9pZCk7PGJyIC8+K2ludCZu YnNwO3p4ZGhfYmFyX21zZ19jaGFuX2V4aXQodm9pZCk7PGJyIC8+K2ludCZuYnNwO3p4ZGhfbXNn X2NoYW5faHdsb2NrX2luaXQoc3RydWN0Jm5ic3A7cnRlX2V0aF9kZXYmbmJzcDsqZGV2KTs8YnIg Lz4rPGJyIC8+KyNpZmRlZiZuYnNwO19fY3BsdXNwbHVzPGJyIC8+K308YnIgLz4rI2VuZGlmPGJy IC8+KzxiciAvPisjZW5kaWYmbmJzcDsvKiZuYnNwO19aWERIX01TR19IXyZuYnNwOyZuYnNwOyov PGJyIC8+LS0mbmJzcDsNPGJyIC8+Mi4yNy4wPGJyIC8+ --=====_003_next=====-- --=====_002_next=====-- --=====_001_next=====--