From mboxrd@z Thu Jan 1 00:00:00 1970 From: Zhi Wang Subject: [RFC 21/29] drm/i915: gvt: vGPU MMIO register emulation Date: Thu, 28 Jan 2016 18:21:43 +0800 Message-ID: <1453976511-27322-22-git-send-email-zhi.a.wang@intel.com> References: <1453976511-27322-1-git-send-email-zhi.a.wang@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 04FB56E800 for ; Thu, 28 Jan 2016 02:24:53 -0800 (PST) In-Reply-To: <1453976511-27322-1-git-send-email-zhi.a.wang@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: intel-gfx@lists.freedesktop.org, igvt-g@lists.01.org Cc: daniel.vetter@ffwll.ch, david.j.cowperthwaite@intel.com List-Id: intel-gfx@lists.freedesktop.org RnJvbTogIk5pdSxCaW5nIiA8YmluZy5uaXVAaW50ZWwuY29tPgoKVGhpcyBwYXRjaCBpbnRyb2R1 Y2VzIHZHUFUgTU1JTyByZWdpc3RlciBlbXVsYXRpb24gY29yZSBsb2dpY3MuCgpVbmRlciB2aXJ0 dWFsaXphdGlvbiBlbnZpcm9ubWVudCwgYWxsIEdFTiBNTUlPIHJlZ2lzdGVyIGFjY2VzcyB3aWxs IGJlIHRyYXBwZWQKYnkgaHlwZXJ2aXNvciBhbmQgZm9yd2FyZGVkIHRvIEdWVC1nLiBHVlQtZyB3 aWxsIGhhbmRsZSB0aGVzZSBNTUlPIHJlZ2lzdGVyCmVtdWxhdGlvbiByZXF1ZXN0IGJ5IGRpZmZl cmVudCBwb2xpY2llcy4KCkZvciBzb21lIGtpbmRzIG9mIHZpcnR1YWwgcmVnaXN0ZXJzLCBhY2Nl c3Npbmcgb25lIG9yIG1vcmUgYml0IG1heSBjYXVzZSBvdGhlcgpiaXQgY2hhbmdlcywgYSBtbWlv IGVtdWxhdGlvbiByZWFkL3dyaXRlIGhhbmRsZXIgd2lsbCBiZSBjYWxsZWQgd2hlbiBHVlQtZyBp cwpoYW5kbGluZyB0aGUgZW11bGF0aW9uIHJlcXVlc3QuCgpTaWduZWQtb2ZmLWJ5OiBOaXUsQmlu ZyA8YmluZy5uaXVAaW50ZWwuY29tPgotLS0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9kZWJ1 Zy5oICAgICB8ICAgMTYgKwogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2d2dC5jICAgICAgIHwg ICAxOCArLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2d2dC5oICAgICAgIHwgICA4MyArKy0K IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9oYW5kbGVycy5jICB8IDEwOTggKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2luc3RhbmNl LmMgIHwgICAgMiArCiBkcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaW50ZXJydXB0LmggfCAgIDE0 ICsKIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9tbWlvLmMgICAgICB8ICAgMzMgKy0KIGRyaXZl cnMvZ3B1L2RybS9pOTE1L2d2dC9tbWlvLmggICAgICB8ICAgMTYgKy0KIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2d2dC9yZWcuaCAgICAgICB8ICAzNzQgKysrKysrKysrKysrCiA5IGZpbGVzIGNoYW5n ZWQsIDE2MzEgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2RlYnVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQv ZGVidWcuaAppbmRleCAxOGUxNDY3Li44MDdkOWU4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9ndnQvZGVidWcuaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvZGVidWcu aApAQCAtNDAsNiArNDAsMTkgQEAKICAgICAgICAgICAgICAgICB9ICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKICAgICAgICAgfSB3aGlsZSAo MCk7CiAKKyNkZWZpbmUgQVNTRVJUX1ZNKHgsIHZndCkgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICBkbyB7ICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAg IGlmICghKHgpKSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg XAorICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnRrKCJBc3NlcnQgYXQgJXMgbGluZSAlZFxu IiwgICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIF9fRklMRV9fLCBfX0xJTkVfXyk7ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgICAg ICAgICAgICAgICAgICBpZiAoYXRvbWljX2NtcHhjaGcoJih2Z3QpLT5jcmFzaGluZywgMCwgMSkp ICAgICBcCisgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgZ3Z0X3dhcm4oIktpbGxp bmcgVk0lZCIsICh2Z3QpLT52bV9pZCk7ICAgICAgIFwKKyAgICAgICAgICAgICAgICAgICAgICAg IGlmICghaHlwZXJ2aXNvcl9wYXVzZV9kb21haW4oKHZndCkpKSAgICAgICAgICAgIFwKKyAgICAg ICAgICAgICAgICAgICAgICAgIGh5cGVydmlzb3Jfc2h1dGRvd25fZG9tYWluKCh2Z3QpKTsgICAg ICBcCisgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBcCisgICAgICAgIH0gd2hpbGUgKDApCisKICNkZWZpbmUgZ3Z0 X2luZm8oZm10LCBhcmdzLi4uKSBcCiAJcHJpbnRrKEtFUk5fSU5GTyJbR1ZULWddICJmbXQiXG4i LCAjI2FyZ3MpCiAKQEAgLTU4LDYgKzcxLDkgQEAgZW51bSB7CiAJR1ZUX0RCR19DT1JFID0gKDEg PDwgMCksCiAJR1ZUX0RCR19NTSA9ICgxIDw8IDEpLAogCUdWVF9EQkdfSVJRID0gKDEgPDwgMiks CisJR1ZUX0RCR19EUFkgPSAoMSA8PCAzKSwKKwlHVlRfREJHX1JFTkRFUiA9ICgxIDw8IDQpLAor CUdWVF9EQkdfRURJRCA9ICgxIDw8IDUpCiB9OwogCiAjZGVmaW5lIGd2dF9kYmdfY29yZShmbXQs IGFyZ3MuLi4pIFwKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9ndnQuYyBi L2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9ndnQuYwppbmRleCA2M2ViMDJjLi44NDU0OWEwIDEw MDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvZ3Z0LmMKKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvZ3Z0L2d2dC5jCkBAIC0xNjksNiArMTY5LDExIEBAIHN0YXRpYyB2b2lkIGNs ZWFuX2luaXRpYWxfbW1pb19zdGF0ZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldikKIAkJaW91bm1h cChwZGV2LT5nbWFkcl92YSk7CiAJCXBkZXYtPmdtYWRyX3ZhID0gTlVMTDsKIAl9CisKKwlpZihw ZGV2LT5yZWdfaW5mbykgeworCQl2ZnJlZShwZGV2LT5yZWdfaW5mbyk7CisJCXBkZXYtPnJlZ19p bmZvID0gTlVMTDsKKwl9CiB9CiAKIHN0YXRpYyBib29sIGluaXRfaW5pdGlhbF9tbWlvX3N0YXRl KHN0cnVjdCBwZ3RfZGV2aWNlICpwZGV2KQpAQCAtMTk3LDYgKzIwMiwxMiBAQCBzdGF0aWMgYm9v bCBpbml0X2luaXRpYWxfbW1pb19zdGF0ZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldikKIAkJZ290 byBlcnI7CiAJfQogCisJcGRldi0+cmVnX2luZm8gPSB2emFsbG9jKHBkZXYtPnJlZ19udW0gKiBz aXplb2YodTMyKSk7CisJaWYgKCFwZGV2LT5yZWdfaW5mbykgeworCQlwcmludGsoInZHVDogZmFp bGVkIHRvIGFsbG9jYXRlIHJlZ19pbmZvXG4iKTsKKwkJZ290byBlcnI7CisJfQorCiAJZ3Z0X2lu Zm8oImJhcjA6IDB4JWxseCwgYmFyMTogMHglbGx4IiwgYmFyMCwgYmFyMSk7CiAJZ3Z0X2luZm8o Im1taW8gc2l6ZTogJXgiLCBwZGV2LT5tbWlvX3NpemUpOwogCWd2dF9pbmZvKCJndHRtbWlvOiAw eCVsbHgsIGdtYWRyOiAweCVsbHgiLCBwZGV2LT5ndHRtbWlvX2Jhc2UsIHBkZXYtPmdtYWRyX2Jh c2UpOwpAQCAtMjI2LDYgKzIzNywxMiBAQCBzdGF0aWMgaW50IGd2dF9zZXJ2aWNlX3RocmVhZCh2 b2lkICpkYXRhKQogCQlpZiAoa3RocmVhZF9zaG91bGRfc3RvcCgpKQogCQkJYnJlYWs7CiAKKwkJ aWYgKHRlc3RfYW5kX2NsZWFyX2JpdChHVlRfUkVRVUVTVF9VRVZFTlQsCisJCQkJCSh2b2lkICop JnBkZXYtPnNlcnZpY2VfcmVxdWVzdCkpIHsKKwkJCWd2dF9kcHlfcmVhZHlfdWV2ZW50X2hhbmRs ZXIocGRldik7CisJCX0KKworCiAJCWlmIChyKSB7CiAJCQlndnRfd2Fybigic2VydmljZSB0aHJl YWQgaXMgd2FrZW4gdXAgYnkgdW5leHBlY3RlZCBzaWduYWwuIik7CiAJCQljb250aW51ZTsKQEAg LTM0MCw3ICszNTcsNiBAQCBzdGF0aWMgc3RydWN0IHBndF9kZXZpY2UgKmFsbG9jX3BndF9kZXZp Y2Uoc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2KQogCW11dGV4X2luaXQoJnBkZXYt PmxvY2spOwogCXBkZXYtPmRldl9wcml2ID0gZGV2X3ByaXY7CiAJaWRyX2luaXQoJnBkZXYtPmlu c3RhbmNlX2lkcik7Ci0KIAlyZXR1cm4gcGRldjsKIGVycjoKIAlmcmVlX3BndF9kZXZpY2UocGRl dik7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvZ3Z0LmggYi9kcml2ZXJz L2dwdS9kcm0vaTkxNS9ndnQvZ3Z0LmgKaW5kZXggNDU2YjMzMi4uNjJjYmI2MiAxMDA2NDQKLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2d2dC5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2d2dC9ndnQuaApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgImk5MTVfdmdwdS5oIgog CiAjaW5jbHVkZSAiZGVidWcuaCIKKwogI2luY2x1ZGUgInBhcmFtcy5oIgogI2luY2x1ZGUgInJl Zy5oIgogI2luY2x1ZGUgImh5cGVyY2FsbC5oIgpAQCAtMTI5LDE4ICsxMzAsMjMgQEAgc3RydWN0 IGd2dF92aXJ0dWFsX2RldmljZV9zdGF0ZSB7CiAJc3RydWN0IGd2dF92aXJ0dWFsX29wcmVnaW9u X3N0YXRlIG9wcmVnaW9uOwogfTsKIAorc3RydWN0IGd2dF91ZXZlbnQgeworCWludCB2bV9pZDsK K307CisKIHN0cnVjdCB2Z3RfZGV2aWNlIHsKIAlpbnQgaWQ7CiAJaW50IHZtX2lkOwogCXN0cnVj dCBwZ3RfZGV2aWNlICpwZGV2OwotCWJvb2wgd2Fybl91bnRyYWNrOwogCWF0b21pY190IGFjdGl2 ZTsKIAlzdHJ1Y3QgZ3Z0X3ZpcnR1YWxfZGV2aWNlX3N0YXRlIHN0YXRlOwogCXN0cnVjdCBndnRf c3RhdGlzdGljcyBzdGF0OwogCXN0cnVjdCBndnRfdmd0dF9pbmZvIGd0dDsKIAl2b2lkICpoeXBl cnZpc29yX2RhdGE7CiAJdW5zaWduZWQgbG9uZyBsb3dfbWVtX21heF9ncGZuOworCXVuc2lnbmVk IGxvbmcgbGFzdF9yZXNldF90aW1lOwogCWF0b21pY190IGNyYXNoaW5nOworCWJvb2wgd2Fybl91 bnRyYWNrOwogfTsKIAogc3RydWN0IGd2dF9nbV9hbGxvY2F0b3IgewpAQCAtMTU2LDYgKzE2Miw3 IEBAIHN0cnVjdCBwZ3RfZGV2aWNlIHsKIAlzdHJ1Y3QgaWRyIGluc3RhbmNlX2lkcjsKIAogCXN0 cnVjdCBndnRfZGV2aWNlX2luZm8gZGV2aWNlX2luZm87CisJc3RydWN0IGd2dF91ZXZlbnQgICAg ICAgdWV2ZW50OwogCiAJdTggaW5pdGlhbF9jZmdfc3BhY2VbR1ZUX0NGR19TUEFDRV9TWl07CiAJ dTY0IGJhcl9zaXplW0dWVF9CQVJfTlVNXTsKQEAgLTIwMCw2ICsyMDcsMzIgQEAgc3RydWN0IHBn dF9kZXZpY2UgewogCXN0cnVjdCBndnRfZ3R0X2luZm8gZ3R0OwogfTsKIAorLyogcmVxdWVzdCB0 eXBlcyB0byB3YWtlIHVwIG1haW4gdGhyZWFkICovCisjZGVmaW5lIEdWVF9SRVFVRVNUX0lSUSAg ICAgICAgICAgICAgICAgICAgICAgIDAgICAgICAgLyogYSBuZXcgaXJxIHBlbmRpbmcgZnJvbSBk ZXZpY2UgKi8KKyNkZWZpbmUgR1ZUX1JFUVVFU1RfVUVWRU5UICAgICAgICAgICAgIDEKKyNkZWZp bmUgR1ZUX1JFUVVFU1RfQ1RYX1NXSVRDSCAgICAgICAgIDIgICAgICAgLyogaW1tZWRpYXRlIHJl c2NoZWR1bGUoY29udGV4dCBzd2l0Y2gpIHJlcXVlc3RlZCAqLworI2RlZmluZSBHVlRfUkVRVUVT VF9FTVVMX0RQWV9FVkVOVFMgICAgMworI2RlZmluZSBHVlRfUkVRVUVTVF9ERVZJQ0VfUkVTRVQg ICAgICAgNAorI2RlZmluZSBHVlRfUkVRVUVTVF9TQ0hFRCAgICAgICAgICAgICAgNQorI2RlZmlu ZSBHVlRfUkVRVUVTVF9DVFhfRU1VTEFUSU9OX1JDUyAgNiAvKiBFbXVsYXRlIGNvbnRleHQgc3dp dGNoIGlycSBvZiBHZW44ICovCisjZGVmaW5lIEdWVF9SRVFVRVNUX0NUWF9FTVVMQVRJT05fVkNT ICA3IC8qIEVtdWxhdGUgY29udGV4dCBzd2l0Y2ggaXJxIG9mIEdlbjggKi8KKyNkZWZpbmUgR1ZU X1JFUVVFU1RfQ1RYX0VNVUxBVElPTl9CQ1MgIDggLyogRW11bGF0ZSBjb250ZXh0IHN3aXRjaCBp cnEgb2YgR2VuOCAqLworI2RlZmluZSBHVlRfUkVRVUVTVF9DVFhfRU1VTEFUSU9OX1ZFQ1MgOSAv KiBFbXVsYXRlIGNvbnRleHQgc3dpdGNoIGlycSBvZiBHZW44ICovCisjZGVmaW5lIEdWVF9SRVFV RVNUX0NUWF9FTVVMQVRJT05fVkNTMiAxMCAvKiBFbXVsYXRlIGNvbnRleHQgc3dpdGNoIGlycSBv ZiBHZW44ICovCisKK3N0YXRpYyBpbmxpbmUgdm9pZCBndnRfcmFpc2VfcmVxdWVzdChzdHJ1Y3Qg cGd0X2RldmljZSAqcGRldiwgdWludDMyX3QgZmxhZykKK3sKKyAgICAgICBzZXRfYml0KGZsYWcs ICh2b2lkICopJnBkZXYtPnNlcnZpY2VfcmVxdWVzdCk7CisgICAgICAgaWYgKHdhaXRxdWV1ZV9h Y3RpdmUoJnBkZXYtPnNlcnZpY2VfdGhyZWFkX3dxKSkKKyAgICAgICAgICAgICAgIHdha2VfdXAo JnBkZXYtPnNlcnZpY2VfdGhyZWFkX3dxKTsKK30KKworc3RhdGljIGlubGluZSBib29sIHZndF9j aGtfcmFpc2VkX3JlcXVlc3Qoc3RydWN0IHBndF9kZXZpY2UgKnBkZXYsIHVpbnQzMl90IGZsYWcp Cit7CisgICAgICAgcmV0dXJuICEhKHRlc3RfYml0KGZsYWcsICh2b2lkICopJnBkZXYtPnNlcnZp Y2VfcmVxdWVzdCkpOworfQorCisKIC8qIGRlZmluaXRpb25zIGZvciBwaHlzaWNhbCBhcGVydHVy ZS9HTSBzcGFjZSAqLwogI2RlZmluZSBwaHlzX2FwZXJ0dXJlX3N6KHBkZXYpICAgICAgICAgIChw ZGV2LT5iYXJfc2l6ZVsxXSkKICNkZWZpbmUgcGh5c19hcGVydHVyZV9wYWdlcyhwZGV2KSAgICAg ICAocGh5c19hcGVydHVyZV9zeihwZGV2KSA+PiBHVFRfUEFHRV9TSElGVCkKQEAgLTI2NiwyMiAr Mjk5LDEyIEBAIGV4dGVybiB2b2lkIGd2dF9mcmVlX2dtX2FuZF9mZW5jZV9yZXNvdXJjZShzdHJ1 Y3Qgdmd0X2RldmljZSAqdmd0KTsKIAogI2RlZmluZSBSRUdfSU5ERVgocmVnKSAoKHJlZykgPj4g MikKIAotI2RlZmluZSBEX1NOQiAgICgxIDw8IDApCi0jZGVmaW5lIERfSVZCICAgKDEgPDwgMSkK LSNkZWZpbmUgRF9IU1cgICAoMSA8PCAyKQotI2RlZmluZSBEX0JEVyAgICgxIDw8IDMpCisjZGVm aW5lIERfSFNXCSgxIDw8IDApCisjZGVmaW5lIERfQkRXCSgxIDw8IDEpCiAKICNkZWZpbmUgRF9H RU44UExVUyAgICAgIChEX0JEVykKLSNkZWZpbmUgRF9HRU43NVBMVVMgICAgIChEX0hTVyB8IERf QkRXKQotI2RlZmluZSBEX0dFTjdQTFVTICAgICAgKERfSVZCIHwgRF9IU1cgfCBEX0JEVykKLQog I2RlZmluZSBEX0JEV19QTFVTICAgICAgKERfQkRXKQotI2RlZmluZSBEX0hTV19QTFVTICAgICAg KERfSFNXIHwgRF9CRFcpCi0jZGVmaW5lIERfSVZCX1BMVVMgICAgICAoRF9JVkIgfCBEX0hTVyB8 IERfQkRXKQotCi0jZGVmaW5lIERfUFJFX0JEVyAgICAgICAoRF9TTkIgfCBEX0lWQiB8IERfSFNX KQotCi0jZGVmaW5lIERfQUxMICAgICAgICAgICAoRF9TTkIgfCBEX0lWQiB8IERfSFNXIHwgRF9C RFcpCisjZGVmaW5lIERfQUxMICAgICAgICAgICAoRF9IU1cgfCBEX0JEVykKIAogI2RlZmluZSBy ZWdfYWRkcl9maXgocGRldiwgcmVnKQkJKHBkZXYtPnJlZ19pbmZvW1JFR19JTkRFWChyZWcpXSAm IEdWVF9SRUdfQUREUl9GSVgpCiAjZGVmaW5lIHJlZ19od19zdGF0dXMocGRldiwgcmVnKQkocGRl di0+cmVnX2luZm9bUkVHX0lOREVYKHJlZyldICYgR1ZUX1JFR19IV19TVEFUVVMpCkBAIC00MjEs NiArNDQ0LDI5IEBAIHN0YXRpYyBpbmxpbmUgdm9pZCBndnRfbW1pb19wb3N0aW5nX3JlYWQoc3Ry dWN0IHBndF9kZXZpY2UgKnBkZXYsIHUzMiByZWcpCiAJUE9TVElOR19SRUFEKHRtcCk7CiB9CiAK K3N0YXRpYyBpbmxpbmUgdm9pZCAgZ3Z0X3NldF9kcHlfdWV2ZW50KHN0cnVjdCB2Z3RfZGV2aWNl ICp2Z3QpCit7CisJc3RydWN0IGd2dF91ZXZlbnQgKmV2ZW50ID0gICZ2Z3QtPnBkZXYtPnVldmVu dDsKKworCWV2ZW50LT52bV9pZCA9IHZndC0+dm1faWQ7Cit9CisKK3N0YXRpYyBpbmxpbmUgYm9v bCBndnRfZHB5X3JlYWR5X3VldmVudF9oYW5kbGVyKHN0cnVjdCBwZ3RfZGV2aWNlICpwZGV2KQor eworCWludCByZXR2YWw7CisJc3RydWN0IGtvYmplY3QgKmtvYmogPSAmKHBkZXYtPmRldl9wcml2 LT5kZXYtPnByaW1hcnktPmtkZXYtPmtvYmopOworCWNoYXIgKmVudlszXSA9IHsiVkdUX0RJU1BM QVlfUkVBRFk9MSIsIE5VTEwsIE5VTEx9OworCWNoYXIgdm1pZF9zdHJbMjBdOworCXNucHJpbnRm KHZtaWRfc3RyLCAyMCwgIlZNSUQ9JWQiLCBwZGV2LT51ZXZlbnQudm1faWQpOworCWVudlsxXSA9 IHZtaWRfc3RyOworCisJcmV0dmFsID0ga29iamVjdF91ZXZlbnRfZW52KGtvYmosIEtPQkpfQURE LCBlbnYpOworCWlmIChyZXR2YWwgPT0gMCkKKwkJcmV0dXJuIHRydWU7CisJZWxzZQorCQlyZXR1 cm4gZmFsc2U7Cit9CisKIGV4dGVybiB2b2lkIGd2dF9jbGVhbl9pbml0aWFsX21taW9fc3RhdGUo c3RydWN0IHBndF9kZXZpY2UgKnBkZXYpOwogZXh0ZXJuIGJvb2wgZ3Z0X3NldHVwX2luaXRpYWxf bW1pb19zdGF0ZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldik7CiAKQEAgLTYxOCw5ICs2NjQsMTgg QEAgc3RhdGljIGlubGluZSB1MzIgaDJnX2d0dF9pbmRleChzdHJ1Y3Qgdmd0X2RldmljZSAqdmd0 LCB1aW50MzJfdCBoX2luZGV4KQogLyogZ2V0IG9uZSBiaXQgb2YgdGhlIGRhdGEsIGJpdCBpcyBz dGFydGluZyBmcm9tIHplb3IgKi8KICNkZWZpbmUgR1ZUX0dFVF9CSVQoZGF0YSwgYml0KSAgICAg ICAgICBHVlRfR0VUX0JJVFMoZGF0YSwgYml0LCBiaXQpCiAKK2ludCBndnRfcmVuZGVyX21taW9f dG9fcmluZ19pZCh1bnNpZ25lZCBpbnQgcmVnKTsKK2ludCBndnRfcmluZ19pZF90b19yZW5kZXJf bW1pb19iYXNlKGludCByaW5nX2lkKTsKKwogaW50IGd2dF9odm1fbWFwX2FwZXJ0dXJlKHN0cnVj dCB2Z3RfZGV2aWNlICp2Z3QsIGludCBtYXApOwogaW50IGd2dF9odm1fc2V0X3RyYXBfYXJlYShz dHJ1Y3Qgdmd0X2RldmljZSAqdmd0LCBpbnQgbWFwKTsKIAorYm9vbCBndnRfZGVmYXVsdF9tbWlv X3JlYWQoc3RydWN0IHZndF9kZXZpY2UgKnZndCwgdW5zaWduZWQgaW50IG9mZnNldCwgdm9pZCAq cF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpOworYm9vbCBndnRfZGVmYXVsdF9tbWlvX3dyaXRl KHN0cnVjdCB2Z3RfZGV2aWNlICp2Z3QsIHVuc2lnbmVkIGludCBvZmZzZXQsIHZvaWQgKnBfZGF0 YSwgdW5zaWduZWQgaW50IGJ5dGVzKTsKKworYm9vbCByZWdpc3Rlcl9tbWlvX2hhbmRsZXIoc3Ry dWN0IHBndF9kZXZpY2UgKnBkZXYsIHVuc2lnbmVkIGludCBzdGFydCwgaW50IGJ5dGVzLAorCWd2 dF9tbWlvX2hhbmRsZXJfdCByZWFkLCBndnRfbW1pb19oYW5kbGVyX3Qgd3JpdGUpOworCiAjaW5j bHVkZSAibXB0LmgiCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv Z3Z0L2hhbmRsZXJzLmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaGFuZGxlcnMuYwppbmRl eCBhNmVjNGYzLi5iYTI5YzljIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQv aGFuZGxlcnMuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaGFuZGxlcnMuYwpAQCAt MjMsMTggKzIzLDExMDcgQEAKIAogI2luY2x1ZGUgImd2dC5oIgogCi0vKiBUT0RPOiBNZXJnZSBy ZWdpc3RlciBkZWZpbml0aW9uIGZyb20gaTkxNS4gKi8KK3N0YXRpYyBib29sIG1taW9fbm90X2Fs bG93X3JlYWQoc3RydWN0IHZndF9kZXZpY2UgKnZndCwgdW5zaWduZWQgaW50IG9mZnNldCwKKwkJ dm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpCit7CisJZ3Z0X2VycigiW3ZndCAlZF06 IHJlYWRpbmcgTU1JTyByZWcgMHgleCBpcyBub3QgYWxsb3dlZC4iLCB2Z3QtPmlkLCBvZmZzZXQp OworCW1lbXNldChwX2RhdGEsIDAsIGJ5dGVzKTsKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGlj IGJvb2wgbW1pb19ub3RfYWxsb3dfd3JpdGUoc3RydWN0IHZndF9kZXZpY2UgKnZndCwKKwkJdW5z aWduZWQgaW50IG9mZnNldCwgdm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpCit7CisJ Z3Z0X2VycigiW3ZndCAlZF06IHdyaXRpbmcgTU1JTyByZWcgMHgleCBpcyBub3QgYWxsb3dlZC4i LAorCQkJdmd0LT5pZCwgb2Zmc2V0KTsKKwlyZXR1cm4gdHJ1ZTsKK30KKworLyogRmVuY2UgTU1J TyBoYW5kbGVycy4gKi8KK3N0YXRpYyBib29sIGNoZWNrX2ZlbmNlX21taW9fYWNjZXNzKHN0cnVj dCB2Z3RfZGV2aWNlICp2Z3QsCisJCXVuc2lnbmVkIGludCBvZmYsIHZvaWQgKnBfZGF0YSwgdW5z aWduZWQgaW50IGJ5dGVzKQoreworCXVuc2lnbmVkIGxvbmcgZmVuY2VfbnVtOworCisJQVNTRVJU KG9mZiA+PSBpOTE1X21taW9fcmVnX29mZnNldChGRU5DRV9SRUdfR0VONl9MTygwKSkgJiYKKwkJ CW9mZiA8PSBpOTE1X21taW9fcmVnX29mZnNldChGRU5DRV9SRUdfR0VONl9ISShHVlRfTUFYX05V TV9GRU5DRVMpKSk7CisKKwlpZiAoYnl0ZXMgPiA4ICYmIChvZmYgJiAoYnl0ZXMgLSAxKSkpIHsK KwkJZ3Z0X2VycigiW3ZndCAlZF0gdW5zdXBwb3J0ZWQgYWNjZXNzIHBhdHRlcm4sIG9mZiAleCBi eXRlcyAleCIsCisJCQkJdmd0LT5pZCwgb2ZmLCBieXRlcyk7CisJCXJldHVybiBmYWxzZTsKKwl9 CisKKwlmZW5jZV9udW0gPSAob2ZmIC0gaTkxNV9tbWlvX3JlZ19vZmZzZXQoRkVOQ0VfUkVHX0dF TjZfTE8oMCkpKSA+PiAzOworCisJaWYgKGZlbmNlX251bSA+PSB2Z3QtPnN0YXRlLmdtLmZlbmNl X3N6KQorCQlndnRfd2FybigiW3ZndCAlZF0gYWNjZXNzIHVuYXNzaWduZWQgZmVuY2UgcmVnICV4 LCB0b3RhbDogJXgiLAorCQkJCXZndC0+aWQsIG9mZiwgdmd0LT5zdGF0ZS5nbS5mZW5jZV9zeik7 CisJcmV0dXJuIHRydWU7Cit9CisKK3N0YXRpYyBib29sIGZlbmNlX21taW9fcmVhZChzdHJ1Y3Qg dmd0X2RldmljZSAqdmd0LCB1bnNpZ25lZCBpbnQgb2ZmLAorCQl2b2lkICpwX2RhdGEsIHVuc2ln bmVkIGludCBieXRlcykKK3sKKwlpZiAoIWNoZWNrX2ZlbmNlX21taW9fYWNjZXNzKHZndCwgb2Zm LCBwX2RhdGEsIGJ5dGVzKSkKKwkJcmV0dXJuIGZhbHNlOworCisJcmV0dXJuIGd2dF9kZWZhdWx0 X21taW9fcmVhZCh2Z3QsIG9mZiwgcF9kYXRhLCBieXRlcyk7Cit9CisKK3N0YXRpYyBib29sIGZl bmNlX21taW9fd3JpdGUoc3RydWN0IHZndF9kZXZpY2UgKnZndCwgdW5zaWduZWQgaW50IG9mZiwK KwkJdm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpCit7CisJaWYgKCFjaGVja19mZW5j ZV9tbWlvX2FjY2Vzcyh2Z3QsIG9mZiwgcF9kYXRhLCBieXRlcykpCisJCXJldHVybiBmYWxzZTsK KworCWlmICghZ3Z0X2RlZmF1bHRfbW1pb193cml0ZSh2Z3QsIG9mZiwgcF9kYXRhLCBieXRlcykp CisJCXJldHVybiBmYWxzZTsKKworCS8qIFRPRE86IENoZWNrIGFkZHJlc3Mgc3BhY2UgKi8KKwor CS8qIEZFTkNFIHJlZ2lzdGVycyBhcmUgcGh5c2ljYWxseSBhc3NpZ25lZCwgdXBkYXRlISAqLwor CWlmIChieXRlcyA8IDgpCisJCWd2dF9tbWlvX3dyaXRlKHZndC0+cGRldiwgb2ZmICsgdmd0LT5z dGF0ZS5nbS5mZW5jZV9iYXNlICogOCwKKwkJCQlfX3NyZWcodmd0LCBvZmYpKTsKKwllbHNlCisJ CWd2dF9tbWlvX3dyaXRlNjQodmd0LT5wZGV2LCBvZmYgKyB2Z3QtPnN0YXRlLmdtLmZlbmNlX2Jh c2UgKiA4LAorCQkJCV9fc3JlZzY0KHZndCwgb2ZmKSk7CisJcmV0dXJuIHRydWU7Cit9CisKK3N0 YXRpYyBib29sIG10X2ZvcmNlX3dha2Vfd3JpdGUoc3RydWN0IHZndF9kZXZpY2UgKnZndCwgdW5z aWduZWQgaW50IG9mZnNldCwKKwkJdm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpCit7 CisJdTMyIGRhdGEsIG1hc2ssIHdha2UsIG9sZF93YWtlLCBuZXdfd2FrZTsKKworCWRhdGEgPSAq KHUzMiopIHBfZGF0YTsKKworCS8qIGJpdCAxNi0zMTogbWFzaworCSAgIGJpdCAwLTE1OiBmb3Jj ZSB3YWtlCisJICAgZm9yY2V3YWtlIGJpdCBhcHBseSBvbmx5IGlmIGl0cyBtYXNrIGJpdCBpcyAx CisJICovCisJbWFzayA9IGRhdGEgPj4gMTY7CisJd2FrZSA9IGRhdGEgJiAweEZGRkY7CisJb2xk X3dha2UgPSBfX3ZyZWcodmd0LCBfRk9SQ0VXQUtFX01UKSAmIDB4RkZGRjsKKworCW5ld193YWtl ID0gKG9sZF93YWtlICYgfm1hc2spICsgKHdha2UgJiBtYXNrKTsKKwlfX3ZyZWcodmd0LCBfRk9S Q0VXQUtFX01UKSA9IChkYXRhICYgMHhGRkZGMDAwMCkgKyBuZXdfd2FrZTsKKwlfX3ZyZWcodmd0 LCBfRk9SQ0VXQUtFX0FDS19IU1cpID0gbmV3X3dha2U7CisKKwlyZXR1cm4gdHJ1ZTsKK30KKwor c3RhdGljIGJvb2wgZ2Ryc3RfbW1pb193cml0ZShzdHJ1Y3Qgdmd0X2RldmljZSAqdmd0LCB1bnNp Z25lZCBpbnQgb2Zmc2V0LAorCQl2b2lkICpwX2RhdGEsIHVuc2lnbmVkIGludCBieXRlcykKK3sK Kwl1MzIgZGF0YSA9ICoodTMyICopcF9kYXRhOworCisJaWYgKGRhdGEgJiBHRU42X0dSRE9NX0ZV TEwpIHsKKwkJZ3Z0X2luZm8oIlZNICVkIHJlcXVlc3QgRnVsbCBHUFUgUmVzZXRcbiIsIHZndC0+ dm1faWQpOworCX0KKworCWlmIChkYXRhICYgR0VONl9HUkRPTV9SRU5ERVIpIHsKKwkJZ3Z0X2lu Zm8oIlZNICVkIHJlcXVlc3QgR1BVIFJlbmRlciBSZXNldFxuIiwgdmd0LT52bV9pZCk7CisJfQor CisJaWYgKGRhdGEgJiBHRU42X0dSRE9NX01FRElBKSB7CisJCWd2dF9pbmZvKCJWTSAlZCByZXF1 ZXN0IEdQVSBNZWRpYSBSZXNldFxuIiwgdmd0LT52bV9pZCk7CisJfQorCisJaWYgKGRhdGEgJiBH RU42X0dSRE9NX0JMVCkgeworCQlndnRfaW5mbygiVk0gJWQgcmVxdWVzdCBHUFUgQkxUIFJlc2V0 XG4iLCB2Z3QtPnZtX2lkKTsKKwl9CisKKwlyZXR1cm4gdHJ1ZTsKK30KKworc3RhdGljIGJvb2wg cmluZ19tb2RlX3dyaXRlKHN0cnVjdCB2Z3RfZGV2aWNlICp2Z3QsIHVuc2lnbmVkIGludCBvZmYs CisJCXZvaWQgKnBfZGF0YSwgdW5zaWduZWQgaW50IGJ5dGVzKQoreworCXJldHVybiB0cnVlOwor fQorCitzdGF0aWMgYm9vbCBwdmluZm9fcmVhZChzdHJ1Y3Qgdmd0X2RldmljZSAqdmd0LCB1bnNp Z25lZCBpbnQgb2Zmc2V0LAorCQl2b2lkICpwX2RhdGEsIHVuc2lnbmVkIGludCBieXRlcykKK3sK Kwlib29sIHJjID0gZ3Z0X2RlZmF1bHRfbW1pb19yZWFkKHZndCwgb2Zmc2V0LCBwX2RhdGEsIGJ5 dGVzKTsKKwlib29sIGludmFsaWRfcmVhZCA9IGZhbHNlOworCisJc3dpdGNoIChvZmZzZXQpIHsK KwkJY2FzZSBfdmd0aWZfcmVnKG1hZ2ljKSAuLi4gX3ZndGlmX3JlZyh2Z3RfaWQpOgorCQkJaWYg KG9mZnNldCArIGJ5dGVzID4gX3ZndGlmX3JlZyh2Z3RfaWQpICsgNCkKKwkJCWludmFsaWRfcmVh ZCA9IHRydWU7CisJCQlicmVhazsKKworCQkJY2FzZSBfdmd0aWZfcmVnKGF2YWlsX3JzLm1hcHBh YmxlX2dtYWRyLmJhc2UpIC4uLgorCQkJCV92Z3RpZl9yZWcoYXZhaWxfcnMuZmVuY2VfbnVtKToK KwkJCQkJaWYgKG9mZnNldCArIGJ5dGVzID4KKwkJCQkJCQlfdmd0aWZfcmVnKGF2YWlsX3JzLmZl bmNlX251bSkgKyA0KQorCQkJCQlpbnZhbGlkX3JlYWQgPSB0cnVlOworCQkJYnJlYWs7CisKKwkJ CWNhc2UgX3ZndGlmX3JlZyhkcnZfdmVyc2lvbl9tYWpvcikgLi4uCisJCQkJX3ZndGlmX3JlZyht aW5fZmVuY2VfbnVtKToKKwkJCQkJaWYgKG9mZnNldCArIGJ5dGVzID4gX3ZndGlmX3JlZyhtaW5f ZmVuY2VfbnVtKSArIDQpCisJCQkJCWludmFsaWRfcmVhZCA9IHRydWU7CisJCQlicmVhazsKKwkJ Y2FzZSBfdmd0aWZfcmVnKHYyZ19ub3RpZnkpOgorCQkJLyogc2V0IGN1cnNvciBzZXR0aW5nIGhl cmUuICBGb3IgZXhhbXBsZToKKwkJCSAqICAgKigodW5zaWduZWQgaW50ICopcF9kYXRhKSkgPSBW R1RfVjJHX1NFVF9TV19DVVJTT1I7CisJCQkgKi8KKwkJCWJyZWFrOworCQljYXNlIF92Z3RpZl9y ZWcodmd0X2NhcHMpOgorCQkJYnJlYWs7CisJCWRlZmF1bHQ6CisJCQlpbnZhbGlkX3JlYWQgPSB0 cnVlOworCQkJYnJlYWs7CisJfQorCisJaWYgKGludmFsaWRfcmVhZCkKKwkJZ3Z0X3dhcm4oImlu dmFsaWQgcHZpbmZvIHJlYWQ6IFsleDoleF0gPSAleCEhIVxuIiwKKwkJCQlvZmZzZXQsIGJ5dGVz LCAqKHUzMiAqKXBfZGF0YSk7CisKKwlyZXR1cm4gcmM7Cit9CisKK3N0YXRpYyBib29sIHB2aW5m b193cml0ZShzdHJ1Y3Qgdmd0X2RldmljZSAqdmd0LCB1bnNpZ25lZCBpbnQgb2Zmc2V0LAorCQl2 b2lkICpwX2RhdGEsIHVuc2lnbmVkIGludCBieXRlcykKK3sKKwl1MzIgdmFsID0gKih1MzIgKilw X2RhdGE7CisJdTMyIG1pbjsKKwlib29sIHJjID0gdHJ1ZTsKKworCXN3aXRjaCAob2Zmc2V0KSB7 CisJCWNhc2UgX3ZndGlmX3JlZyhtaW5fbG93X2dtYWRyKToKKwkJCW1pbiA9IHZhbDsKKwkJCWlm ICh2Z3QtPnN0YXRlLmdtLmFwZXJ0dXJlX3N6IDwgbWluKSB7CisJCQkJZ3Z0X2VycigiVk0oJWQp OiBhcGVydHVyZSBzaXplKCVsbHgpIGlzIGxlc3MgdGhhbiIKKwkJCQkJCSJpdHMgZHJpdmVyJ3Mg bWluaW11bSByZXF1aXJlbWVudCgleCkhXG4iLAorCQkJCQkJdmd0LT52bV9pZCwgdmd0LT5zdGF0 ZS5nbS5hcGVydHVyZV9zeiwgbWluKTsKKwkJCQlyYyA9IGZhbHNlOworCQkJfQorCQkJYnJlYWs7 CisJCWNhc2UgX3ZndGlmX3JlZyhtaW5faGlnaF9nbWFkcik6CisJCQltaW4gPSB2YWw7CisJCQlp ZiAodmd0LT5zdGF0ZS5nbS5nbV9zeiAtIHZndC0+c3RhdGUuZ20uYXBlcnR1cmVfc3ogPCBtaW4p IHsKKwkJCQlndnRfZXJyKCJWTSglZCk6IGhpZGVuIGdtIHNpemUoJWxseCkgaXMgbGVzcyB0aGFu IgorCQkJCQkJIml0cyBkcml2ZXIncyBtaW5pbXVtIHJlcXVpcmVtZW50KCV4KSFcbiIsCisJCQkJ CQl2Z3QtPnZtX2lkLCB2Z3QtPnN0YXRlLmdtLmdtX3N6IC0gdmd0LT5zdGF0ZS5nbS5hcGVydHVy ZV9zeiwKKwkJCQkJCW1pbik7CisJCQkJcmMgPSBmYWxzZTsKKwkJCX0KKwkJCWJyZWFrOworCQlj YXNlIF92Z3RpZl9yZWcobWluX2ZlbmNlX251bSk6CisJCQltaW4gPSB2YWw7CisJCQlpZiAodmd0 LT5zdGF0ZS5nbS5mZW5jZV9zeiA8IG1pbikgeworCQkJCWd2dF9lcnIoIlZNKCVkKTogZmVuY2Ug c2l6ZSgleCkgaXMgbGVzcyB0aGFuIgorCQkJCQkJIml0cyBkcml2ZXJzIG1pbmltdW0gcmVxdWly ZW1lbnQoJXgpIVxuIiwKKwkJCQkJCXZndC0+dm1faWQsIHZndC0+c3RhdGUuZ20uZmVuY2Vfc3os IG1pbik7CisJCQkJcmMgPSBmYWxzZTsKKwkJCX0KKwkJCWJyZWFrOworCQljYXNlIF92Z3RpZl9y ZWcoZzJ2X25vdGlmeSk6CisJCQkJaWYgKHZhbCA9PSBWR1RfRzJWX1BQR1RUX0wzX1BBR0VfVEFC TEVfQ1JFQVRFKSB7CisJCQkJCXJjID0gZ3Z0X2cydl9jcmVhdGVfcHBndHRfbW0odmd0LCAzKTsK KwkJCQl9IGVsc2UgaWYgKHZhbCA9PSBWR1RfRzJWX1BQR1RUX0wzX1BBR0VfVEFCTEVfREVTVFJP WSkgeworCQkJCQlyYyA9IGd2dF9nMnZfZGVzdHJveV9wcGd0dF9tbSh2Z3QsIDMpOworCQkJCX0g ZWxzZSBpZiAodmFsID09IFZHVF9HMlZfUFBHVFRfTDRfUEFHRV9UQUJMRV9DUkVBVEUpIHsKKwkJ CQkJcmMgPSBndnRfZzJ2X2NyZWF0ZV9wcGd0dF9tbSh2Z3QsIDQpOworCQkJCX0gZWxzZSBpZiAo dmFsID09IFZHVF9HMlZfUFBHVFRfTDRfUEFHRV9UQUJMRV9ERVNUUk9ZKSB7CisJCQkJCXJjID0g Z3Z0X2cydl9kZXN0cm95X3BwZ3R0X21tKHZndCwgNCk7CisJCQkJfSBlbHNlIHsKKwkJCQkJZ3Z0 X3dhcm4oIkludmFsaWQgUFYgbm90aWZpY2F0aW9uLiAleFxuIiwgdmFsKTsKKwkJCQl9CisJCQli cmVhazsKKwkJY2FzZSBfdmd0aWZfcmVnKHBkcFswXS5sbyk6CisJCWNhc2UgX3ZndGlmX3JlZyhw ZHBbMF0uaGkpOgorCQljYXNlIF92Z3RpZl9yZWcocGRwWzFdLmxvKToKKwkJY2FzZSBfdmd0aWZf cmVnKHBkcFsxXS5oaSk6CisJCWNhc2UgX3ZndGlmX3JlZyhwZHBbMl0ubG8pOgorCQljYXNlIF92 Z3RpZl9yZWcocGRwWzJdLmhpKToKKwkJY2FzZSBfdmd0aWZfcmVnKHBkcFszXS5sbyk6CisJCWNh c2UgX3ZndGlmX3JlZyhwZHBbM10uaGkpOgorCQljYXNlIF92Z3RpZl9yZWcoZXhlY2xpc3RfY29u dGV4dF9kZXNjcmlwdG9yX2xvKToKKwkJY2FzZSBfdmd0aWZfcmVnKGV4ZWNsaXN0X2NvbnRleHRf ZGVzY3JpcHRvcl9oaSk6CisJCQlicmVhazsKKworCQlkZWZhdWx0OgorCQkJLyoga2VlcCByYydz IGRlZmF1bHQgdmFsdWU6IHRydWUuCisJCQkgKiBOT1RFOiByZXR1cm5pbmcgZmFsc2Ugd2lsbCBj cmFzaCB0aGUgVk0uCisJCQkgKi8KKwkJCWd2dF93YXJuKCJpbnZhbGlkIHB2aW5mbyB3cml0ZTog WyV4OiV4XSA9ICV4ISEhXG4iLAorCQkJCQlvZmZzZXQsIGJ5dGVzLCB2YWwpOworCQkJYnJlYWs7 CisJfQorCisJaWYgKHJjID09IHRydWUpCisJCXJjID0gZ3Z0X2RlZmF1bHRfbW1pb193cml0ZSh2 Z3QsIG9mZnNldCwgcF9kYXRhLCBieXRlcyk7CisJcmV0dXJuIHJjOworfQorCitib29sIGZwZ2Ff ZGJnX3dyaXRlKHN0cnVjdCB2Z3RfZGV2aWNlICp2Z3QsIHVuc2lnbmVkIGludCByZWcsCisgICAg ICAgIHZvaWQgKnBfZGF0YSwgdW5zaWduZWQgaW50IGJ5dGVzKQoreworICAgICAgICB1MzIgdiA9 ICoodTMyICopcF9kYXRhOworCisJaWYgKHYgJiBGUEdBX0RCR19STV9OT0NMQUlNKQorCQl2ICY9 IH4gRlBHQV9EQkdfUk1fTk9DTEFJTTsKKworICAgICAgICByZXR1cm4gZ3Z0X2RlZmF1bHRfbW1p b193cml0ZSh2Z3QsIHJlZywgJnYsIGJ5dGVzKTsKK30KKwogc3RydWN0IGd2dF9yZWdfaW5mbyBn dnRfZ2VuZXJhbF9yZWdfaW5mb1tdID0gewotezAsIDAsIDAsIDAsIDAsIE5VTEwsIE5VTEx9LAor CS8qIEludGVycnVwdCByZWdpc3RlcnMgLSBHVCAqLworCXtfUklOR19JTVIoUkVOREVSX1JJTkdf QkFTRSksIDQsIEZfUkRSLCAwLCBEX0FMTCwgTlVMTCwgZ3Z0X3JlZ19pbXJfaGFuZGxlcn0sCisJ e19SSU5HX0lNUihCTFRfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBndnRf cmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JJTkdfSU1SKEdFTjZfQlNEX1JJTkdfQkFTRSksIDQsIEZf UkRSLCAwLCBEX0FMTCwgTlVMTCwgZ3Z0X3JlZ19pbXJfaGFuZGxlcn0sCisJe19SSU5HX0lNUihW RUJPWF9SSU5HX0JBU0UpLCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIGd2dF9yZWdfaW1yX2hh bmRsZXJ9LAorCisJLyogSW50ZXJydXB0IHJlZ2lzdGVycyAtIFBDSCAqLworCXtfU0RFSU1SLCA0 LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1NERUlF UiwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJe19T REVJSVIsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIGd2dF9yZWdfaWlyX2hhbmRsZXJ9LAor CXtfU0RFSVNSLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBndnRfcmVnX2lzcl93cml0ZX0s CisKKwkvKiAtLS0tLS0tcmVuZGVyIHJlZ3MtLS0tLS0tLS0tICovCisJe19SSU5HX0hXU1RBTShS RU5ERVJfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJ TkdfSFdTVEFNKEJMVF9SSU5HX0JBU0UpLCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9 LAorCXtfUklOR19IV1NUQU0oR0VONl9CU0RfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfSFdTVEFNKFZFQk9YX1JJTkdfQkFTRSksIDQsIEZfUkRS LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X1JFTkRFUl9IV1NfUEdBX0dFTjcsIDQsIEZf UkRSX0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfQlNEX0hXU19Q R0FfR0VONywgNCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJe19CTFRfSFdTX1BHQV9HRU43LCA0LCBGX1JEUl9BRFJGSVgsIDB4RkZGRkYwMDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1ZFQk9YX0hXU19QR0FfR0VONywgNCwgRl9SRFJfQURSRklYLCAw eEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwkvKiBtYXliZSBhbiBlcnJvciBpbiBM aW51eCBkcml2ZXIuIG1lYW50IGZvciBWQ1NfSFdTX1BHQSAqLworCXtfUkVHX1JDU19FWENDLCA0 LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDU19FWENDLCA0LCBGX1JE UiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0JDU19FWENDLCA0LCBGX1JEUiwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1JDU19VSFBUUiwgNCwgRl9SRFJfSFdTVFMsIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WQ1NfVUhQVFIsIDQsIEZfUkRSX0hXU1RTLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfQkNTX1VIUFRSLCA0LCBGX1JEUl9IV1NUUywg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZFQ1NfVUhQVFIsIDQsIEZfUkRSX0hXU1RT LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfUkNTX0JCX1BSRUVNUFRfQUREUiwgNCwg Rl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7MHgxMjE5 OCwgNCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7 X1JJTkdfVEFJTChSRU5ERVJfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X1JJTkdfSEVBRChSRU5ERVJfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfU1RBUlQoUkVOREVSX1JJTkdfQkFTRSksIDQsIEZfUkRS X0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEwsCisJCU5VTEwsIE5VTEx9LAorCXtfUklOR19DVEwo UkVOREVSX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19S SU5HX0FDVEhEKFJFTkRFUl9SSU5HX0JBU0UpLCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCisJe19SSU5HX1RBSUwoR0VONl9CU0RfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfSEVBRChHRU42X0JTRF9SSU5HX0JBU0UpLCA0LCBG X1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUklOR19TVEFSVChHRU42X0JTRF9SSU5H X0JBU0UpLCA0LCBGX1JEUl9BRFJGSVgsIDB4RkZGRkYwMDAsIERfQUxMLAorCQlOVUxMLCBOVUxM fSwKKwl7X1JJTkdfQ1RMKEdFTjZfQlNEX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19SSU5HX0FDVEhEKEdFTjZfQlNEX1JJTkdfQkFTRSksIDQsIEZfUkRS LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X1JJTkdfVEFJTChCTFRfUklOR19CQVNFKSwg NCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfSEVBRChCTFRfUklOR19C QVNFKSwgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfU1RBUlQoQkxU X1JJTkdfQkFTRSksIDQsIEZfUkRSX0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEwsCisJCU5VTEws IE5VTEx9LAorCXtfUklOR19DVEwoQkxUX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19SSU5HX0FDVEhEKEJMVF9SSU5HX0JBU0UpLCA0LCBGX1JEUiwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19SSU5HX1RBSUwoVkVCT1hfUklOR19CQVNFKSwgNCwg Rl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfSEVBRChWRUJPWF9SSU5HX0JB U0UpLCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUklOR19TVEFSVChWRUJP WF9SSU5HX0JBU0UpLCA0LCBGX1JEUl9BRFJGSVgsIDB4RkZGRkYwMDAsIERfQUxMLAorCQlOVUxM LCBOVUxMfSwKKwl7X1JJTkdfQ1RMKFZFQk9YX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19SSU5HX0FDVEhEKFZFQk9YX1JJTkdfQkFTRSksIDQsIEZfUkRS LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7R1ZUX1JJTkdfTU9ERShSRU5ERVJfUklOR19C QVNFKSwgNCwgRl9SRFJfTU9ERSwgMCwgRF9BTEwsIE5VTEwsIHJpbmdfbW9kZV93cml0ZX0sCisJ e0dWVF9SSU5HX01PREUoQkxUX1JJTkdfQkFTRSksIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBO VUxMLCByaW5nX21vZGVfd3JpdGV9LAorCXtHVlRfUklOR19NT0RFKEdFTjZfQlNEX1JJTkdfQkFT RSksIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBOVUxMLCByaW5nX21vZGVfd3JpdGV9LAorCXtH VlRfUklOR19NT0RFKFZFQk9YX1JJTkdfQkFTRSksIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBO VUxMLCByaW5nX21vZGVfd3JpdGV9LAorCisJe19SSU5HX01JX01PREUoUkVOREVSX1JJTkdfQkFT RSksIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfTUlfTU9E RShCTFRfUklOR19CQVNFKSwgNCwgRl9SRFJfTU9ERSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAor CXtfUklOR19NSV9NT0RFKEdFTjZfQlNEX1JJTkdfQkFTRSksIDQsIEZfUkRSX01PREUsIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JJTkdfTUlfTU9ERShWRUJPWF9SSU5HX0JBU0UpLCA0LCBG X1JEUl9NT0RFLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X1JJTkdfSU5TVFBNKFJFTkRF Ul9SSU5HX0JBU0UpLCA0LCBGX1JEUl9NT0RFLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19S SU5HX0lOU1RQTShCTFRfUklOR19CQVNFKSwgNCwgRl9SRFJfTU9ERSwgMCwgRF9BTEwsIE5VTEws IE5VTEx9LAorCXtfUklOR19JTlNUUE0oR0VONl9CU0RfUklOR19CQVNFKSwgNCwgRl9SRFJfTU9E RSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUklOR19JTlNUUE0oVkVCT1hfUklOR19CQVNF KSwgNCwgRl9SRFJfTU9ERSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19HRU43X0dUX01P REUsIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0NBQ0hFX01PREVf MF9HRU43LCA0LCBGX1JEUl9NT0RFLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19DQUNIRV9N T0RFXzEsIDQsIEZfUkRSX01PREUsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19SQ1Nf QkJfQUREUiwgNCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJe19SRUdfVkNTX0JCX0FERFIsIDQsIEZfUkRSX0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfUkVHX0JDU19CQl9BRERSLCA0LCBGX1JEUl9BRFJGSVgsIDB4RkZG RkYwMDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WRUNTX0JCX0FERFIsIDQsIEZfUkRS X0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJezB4MjA1MCwgNCwg Rl9QVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDEyMDUwLCA0LCBGX1BULCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJezB4MjIwNTAsIDQsIEZfUFQsIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKwl7MHgxQTA1MCwgNCwgRl9QVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJezB4MjBk YywgNCwgRl9SRFJfTU9ERSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfXzNEX0NISUNLRU4z LCA0LCBGX1JEUl9NT0RFLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4MjA4OCwgNCwgRl9S RFJfTU9ERSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDIwZTQsIDQsIEZfUkRSX01PREUs IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WRlNLUEQsIDQsIEZfUkRSX01PREUsIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dBTV9FQ09DSEssIDQsIEZfUkRSLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19HRU43X0NPTU1PTl9TTElDRV9DSElDS0VOMSwgNCwgRl9SRFIsIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0NPTU1PTl9TTElDRV9DSElDS0VOMiwgNCwgRl9SRFIs IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg5MDMwLCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXsweDIwYTAsIDQsIEZfUkRSLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJ e19SRUdfUkNTX1RJTUVTVEFNUCwgOCwgRl9QVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtf UkVHX1ZDU19USU1FU1RBTVAsIDgsIEZfUFQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHgx YTM1OCwgOCwgRl9QVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0JDU19USU1FU1RB TVAsIDgsIEZfUFQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHgyNDIwLCA0LCBGX1JEUiwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDI0MzAsIDQsIEZfUkRSLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJezB4MjQzNCwgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7 MHgyNDM4LCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDI0M2MsIDQsIEZf UkRSLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4NzAxOCwgNCwgRl9SRFIsIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7MHhlMTg0LCA0LCBGX1JEUiwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9 LAorCisJLyogLS0tLS0tLWRpc3BsYXkgcmVncy0tLS0tLS0tLS0gKi8KKwl7MHg2MDIyMCwgMHgy MCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2MDJhMCwgNCwgRl9EUFksIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXsweDY1MDUwLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXsweDY1MGI0LCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAor CisJe1ZHQV9DUl9JTkRFWF9NREEsIDEsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJ e1ZHQV9TVDAxX01EQSwgMSwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7VkdBX0FS X0lOREVYLCAxLCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtWR0FfREFDTUFTSywg MSwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7VkdBX01TUl9SRUFELCAxLCBGX0RQ WSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfVkdBMCwgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7X1ZHQTEsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJ e19WR0FfUEQsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7MHg0MjA4MCwg NCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4YzQwNDAsIDQsIEZfVklSVCwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19ERVJSTVIsIDQsIEZfVklSVCwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCisJe0dWVF9DVVJTVVJGKFBJUEVfQSksIDQsIEZfRFBZX0FEUkZJWCwg MHhGRkZGRjAwMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfQ1VSQ05UUihQSVBFX0EpLCA0 LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfQ1VSUE9TKFBJUEVfQSksIDQs IEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe0dWVF9DVVJTVVJGTElWRShQSVBFX0Ep LCA0LCBGX0RQWV9IV1NUU19BRFJGSVgsIDB4RkZGRkYwMDAsIERfQUxMLCBOVUxMLAorCQltbWlv X25vdF9hbGxvd193cml0ZX0sCisKKwl7R1ZUX0NVUlNVUkYoUElQRV9CKSwgNCwgRl9EUFlfQURS RklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe0dWVF9DVVJDTlRSKFBJUEVf QiksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe0dWVF9DVVJQT1MoUElQRV9C KSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7R1ZUX0NVUlNVUkZMSVZFKFBJ UEVfQiksIDQsIEZfRFBZX0hXU1RTX0FEUkZJWCwgMHhGRkZGRjAwMCwgRF9BTEwsIE5VTEwsCisJ CW1taW9fbm90X2FsbG93X3dyaXRlfSwKKworCXtHVlRfQ1VSU1VSRihQSVBFX0MpLCA0LCBGX0RQ WV9BRFJGSVgsIDB4RkZGRkYwMDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7R1ZUX0NVUkNOVFIo UElQRV9DKSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7R1ZUX0NVUlBPUyhQ SVBFX0MpLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfQ1VSU1VSRkxJ VkUoUElQRV9DKSwgNCwgRl9EUFlfSFdTVFNfQURSRklYLCAweEZGRkZGMDAwLCBEX0FMTCwgTlVM TCwKKwkJbW1pb19ub3RfYWxsb3dfd3JpdGV9LAorCisJe19SRUdfQ1VSQVBBTEVUXzAsIDQsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfQ1VSQVBBTEVUXzEsIDQsIEZfRFBZ LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfQ1VSQVBBTEVUXzIsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfQ1VSQVBBTEVUXzMsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X0xHQ19QQUxFVFRFX0EsIDQgKiAyNTYsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19MR0NfUEFMRVRURV9CLCA0ICogMjU2LCBGX0RQWSwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0xHQ19QQUxFVFRFX0MsIDQgKiAyNTYsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7MHg3MDFiMCwgNCwgRl9WSVJULCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7R1ZUX0hUT1RBTChQSVBFX0EpLCA0LCBGX0RQWSwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfSEJMQU5LKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe0dWVF9IU1lOQyhQSVBFX0EpLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfVlRPVEFMKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe0dWVF9WQkxBTksoUElQRV9BKSwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7R1ZUX1ZTWU5DKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe0dWVF9QSVBFU1JDKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe0dWVF9CQ0xSUEFUKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe0dWVF9WU1lOQ1NISUZUKFBJUEVfQSksIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisKKwl7R1ZUX0hUT1RBTChQSVBFX0IpLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtHVlRfSEJMQU5LKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe0dWVF9IU1lOQyhQSVBFX0IpLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtHVlRfVlRPVEFMKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe0dWVF9WQkxBTksoUElQRV9CKSwgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7R1ZUX1ZTWU5DKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe0dWVF9QSVBFU1JDKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe0dWVF9CQ0xSUEFUKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe0dWVF9WU1lOQ1NISUZUKFBJUEVfQiksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisKKwl7R1ZUX0hUT1RBTChQSVBFX0MpLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtHVlRfSEJMQU5LKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe0dWVF9IU1lOQyhQSVBFX0MpLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXtHVlRfVlRPVEFMKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe0dWVF9WQkxBTksoUElQRV9DKSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7R1ZUX1ZTWU5DKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe0dWVF9QSVBFU1JDKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe0dWVF9CQ0xSUEFUKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe0dWVF9WU1lOQ1NISUZUKFBJUEVfQyksIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisKKwl7MHg2RjAwMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7MHg2RjAwNCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjAwOCwg NCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjAwQywgNCwgRl9EUFksIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjAxMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7MHg2RjAxNCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7 MHg2RjAyOCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjAzMCwgNCwg Rl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjAzNCwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2RjA0MCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7MHg2RjA0NCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtf UElQRUFfREFUQV9NMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BJUEVB X0RBVEFfTjEsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QSVBFQV9MSU5L X00xLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUElQRUFfTElOS19OMSwg NCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtfUElQRUJfREFUQV9NMSwgNCwg Rl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BJUEVCX0RBVEFfTjEsIDQsIEZfRFBZ LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QSVBFQl9MSU5LX00xLCA0LCBGX0RQWSwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUElQRUJfTElOS19OMSwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX1BJUEVDX0RBVEFfTTEsIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19SRUdfUElQRUNfREFUQV9OMSwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QSVBFQ19MSU5LX00xLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfUkVHX1BJUEVDX0xJTktfTjEsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisKKwl7X1BGQV9DVExfMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X1BGQV9XSU5fU1osIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJ e19QRkFfV0lOX1BPUywgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BGQl9D VExfMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BGQl9XSU5fU1osIDQs IEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QRkJfV0lOX1BPUywgNCwgRl9EUFks IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QRl9DVExfMiwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QRl9XSU5fU1pfMiwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QRl9XSU5fUE9TXzIsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisKKwl7X1dNMF9QSVBFQV9JTEssIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe19XTTBfUElQRUJfSUxLLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCXtfV00wX1BJUEVDX0lWQiwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X1dNMV9MUF9JTEssIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19XTTJf TFBfSUxLLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfV00zX0xQX0lMSywg NCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1dNMVNfTFBfSUxLLCA0LCBGX0RQ WSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfV00yU19MUF9JVkIsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19XTTNTX0xQX0lWQiwgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKworCXtfUkVHX0hJU1RPR1JBTV9USFJTSCwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKworCXtfQkxDX1BXTV9DUFVfQ1RMMiwgNCwgRl9ET00wLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19CTENfUFdNX0NQVV9DVEwsIDQsIEZfRE9NMCwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfQkxDX1BXTV9QQ0hfQ1RMMSwgNCwgRl9ET00wLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19CTENfUFdNX1BDSF9DVEwyLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKworCXtfUENIX1RSQU5TX0hUT1RBTF9BLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfUENIX1RSQU5TX0hCTEFOS19BLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfUENIX1RSQU5TX0hTWU5DX0EsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNfVlRPVEFMX0EsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNfVkJMQU5LX0EsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNfVlNZTkNfQSwgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7X1BDSF9UUkFOU19WU1lOQ1NISUZUX0EsIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisKKwl7X1BDSF9UUkFOU19IVE9UQUxfQiwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BDSF9UUkFOU19IQkxBTktfQiwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BDSF9UUkFOU19IU1lOQ19CLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX1RSQU5TX1ZUT1RBTF9CLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX1RSQU5TX1ZCTEFOS19CLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX1RSQU5TX1ZTWU5DX0IsIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNfVlNZTkNTSElGVF9CLCA0LCBGX0RQWSwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19QQ0hfVFJBTlNBX0RBVEFfTTEsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0RBVEFfTjEsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0RBVEFfTTIsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0RBVEFfTjIsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0xJTktfTTEsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0xJTktfTjEsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0xJTktfTTIsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfVFJBTlNBX0xJTktfTjIsIDQsIEZfRFBZLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X1ZJREVPX0RJUF9DVExfQSwgNCwgRl9EUFksIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1ZJREVPX0RJUF9EQVRBX0EsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19WSURFT19ESVBfR0NQX0EsIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19UUkFOU19EUF9DVExfQSwgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7X1ZJREVPX0RJUF9DVExfQiwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7X1ZJREVPX0RJUF9EQVRBX0IsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe19WSURFT19ESVBfR0NQX0IsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVM TH0sCisJe19UUkFOU19EUF9DVExfQiwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X1JFR19UUkFOU0NfVklERU9fRElQX0NUTCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X1JFR19UUkFOU0NfVklERU9fRElQX0RBVEEsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19SRUdfVFJBTlNDX1ZJREVPX0RJUF9HQ1AsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19UUkFOU19EUF9DVExfQywgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKworCXtfRkRJX1JYQV9NSVNDLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXtfRkRJX1JYQl9NSVNDLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCXtfRkRJX1JYQV9UVVNJWkUxLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9 LAorCXtfRkRJX1JYQV9UVVNJWkUyLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAor CXtfRkRJX1JYQl9UVVNJWkUxLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtf RkRJX1JYQl9UVVNJWkUyLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19Q Q0hfTFZEUywgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BDSF9EUExMX0Es IDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfRFBMTF9CLCA0LCBGX0RQ WSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX0ZQQTAsIDQsIEZfRFBZLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfRlBBMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X1BDSF9GUEIwLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtf UENIX0ZQQjEsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QQ0hfRFJFRl9D T05UUk9MLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX1JBV0NMS19G UkVRLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUENIX0RQTExfU0VMLCA0 LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCS8qIExpbnV4IGRlZmluZXMgYXMgUFBf T05fREVQTEFZL1BQX09GRl9ERUxBWS4gTm90IGluIHNwZWMgKi8KKwl7MHg2MTIwOCwgNCwgRl9E UFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg2MTIwYywgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1BDSF9QUF9PTl9ERUxBWVMsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19QQ0hfUFBfT0ZGX0RFTEFZUywgNCwgRl9EUFksIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKworCXtfRlVTRV9TVFJBUCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X0RJR0lUQUxfUE9SVF9IT1RQTFVHX0NOVFJMLCA0LCBGX0RQWSwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCisJe19ESVNQX0FSQl9DVEwsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJe19ESVNQX0FSQl9DVEwyLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCisJe19JTEtfRElTUExBWV9DSElDS0VOMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7X0lMS19ESVNQTEFZX0NISUNLRU4yLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXtfSUxLX0RTUENMS19HQVRFX0QsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisKKwl7X1RSQU5TQV9DSElDS0VOMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7X1RSQU5TQl9DSElDS0VOMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7X1NPVVRIX0RTUENMS19HQVRFX0QsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe19UUkFOU0FfQ0hJQ0tFTjIsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVM TH0sCisJe19UUkFOU0JfQ0hJQ0tFTjIsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJLyoKKwkgKiBmcmFtZWJ1ZmZlciBjb21wcmVzc2lvbiBpcyBkaXNhYmxlZCBmb3Igbm93CisJ ICogdW50aWwgaXQncyBoYW5kbGVkIGF0IGRpc3BsYXkgY29udGV4dCBzd2l0Y2gKKwkgKiBhbmQg d2UgZmlndXJlIG91dCBob3cgc3RvbGVuIG1lbW9yeSBzaG91bGQgYmUgdmlydHVhbGl6ZWQgKEZC QyBuZWVkcyB1c2UKKwkgKiBzdG9sZW4gbWVtb3J5KS4KKwkgKi8KKwl7X1JFR19EUEZDX0NCX0JB U0UsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0RQRkNfQ09OVFJP TCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfRFBGQ19SRUNPTVBf Q1RMLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19EUEZDX0NQVV9G RU5DRV9PRkZTRVQsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0RQ RkNfQ09OVFJPTF9TQSwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdf RFBGQ19DUFVfRkVOQ0VfT0ZGU0VUX1NBLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKworCXtfSVBTX0NUTCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7 X1JFR19DU0NfQV9DT0VGRklDSUVOVFMsIDQqNiwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKwl7X1JFR19DU0NfQV9NT0RFLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAor CXtfUkVHX1BSRUNTQ19BX0hJR0hfQ09MT1JfQ0hBTk5FTF9PRkZTRVQsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfUFJFQ1NDX0FfTUVESVVNX0NPTE9SX0NIQU5ORUxf T0ZGU0VULCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1BSRUNTQ19B X0xPV19DT0xPUl9DSEFOTkVMX09GRlNFVCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKworCXtfUkVHX0NTQ19CX0NPRUZGSUNJRU5UUywgNCo2LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXtfUkVHX0NTQ19CX01PREUsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwg TlVMTH0sCisJe19SRUdfUFJFQ1NDX0JfSElHSF9DT0xPUl9DSEFOTkVMX09GRlNFVCwgNCwgRl9E UFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QUkVDU0NfQl9NRURJVU1fQ09MT1Jf Q0hBTk5FTF9PRkZTRVQsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdf UFJFQ1NDX0JfTE9XX0NPTE9SX0NIQU5ORUxfT0ZGU0VULCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCisJe19SRUdfQ1NDX0NfQ09FRkZJQ0lFTlRTLCA0KjYsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfQ1NDX0NfTU9ERSwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X1JFR19QUkVDU0NfQ19ISUdIX0NPTE9SX0NIQU5ORUxfT0ZGU0VU LCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1BSRUNTQ19DX01FRElV TV9DT0xPUl9DSEFOTkVMX09GRlNFVCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X1JFR19QUkVDU0NfQ19MT1dfQ09MT1JfQ0hBTk5FTF9PRkZTRVQsIDQsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7MHg2MDExMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7MHg2MTExMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7 MHg3MDQwMCwgMHg0MCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg3MTQwMCwg MHg0MCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg3MjQwMCwgMHg0MCwgRl9E UFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXsweDcwNDQwLCAweGMsIEZfRFBZLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJezB4NzE0NDAsIDB4YywgRl9EUFksIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7MHg3MjQ0MCwgMHhjLCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAor CisJezB4NzA0NGMsIDB4YywgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg3MTQ0 YywgMHhjLCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDcyNDRjLCAweGMsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwl7X1BJUEVfV01fTElORVRJTUVfQSwgNCwg Rl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BJUEVfV01fTElORVRJTUVfQiwgNCwg Rl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0NTI3OCwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1NQTExfQ1RMLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEws IE5VTEx9LAorCXtfV1JQTExfQ1RMMSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X1dSUExMX0NUTDIsIDQsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QT1JU X0NMS19TRUxfQSwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BPUlRfQ0xL X1NFTF9CLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1BPUlRfQ0xL X1NFTF9ERElDLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1BPUlRf Q0xLX1NFTF9ERElELCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1BP UlRfQ0xLX1NFTF9ERElFLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfVFJB TlNfQ0xLX1NFTF9BLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfVFJBTlNf Q0xLX1NFTF9CLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1RSQU5T X0NMS19TRUxfQywgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0NjQwOCwg NCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0NjUwOCwgNCwgRl9EUFksIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0OTA0MCwgMHhjLCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCXsweDQ5MTQwLCAweGMsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJezB4NDkyNDAsIDB4YywgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0OTA4 MCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0OTA5MCwgMHgxNCwgRl9E UFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0OTE4MCwgNCwgRl9EUFksIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7MHg0OTE5MCwgMHgxNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7MHg0OTI4MCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0 OTI5MCwgMHgxNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0QTQwMCwgNCwg Rl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0QTQ4MCwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0QUMwMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7MHg0QUM4MCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0 QjQwMCwgNCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0QjQ4MCwgNCwgRl9E UFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXsweDYwMDJDLCA0LCBGX0RQWSwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCisJe19IU1dfVklERU9fRElQX0NUTF9BLCA0LCBGX0RQWSwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfSFNXX1ZJREVPX0RJUF9DVExfQiwgNCwgRl9EUFksIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19IU1dfVklERU9fRElQX0NUTF9DLCA0LCBGX0RQ WSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0hTV19WSURFT19ESVBfQ1RMX0VEUCwg NCwgRl9EUFksIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtfU0ZVU0VfU1RSQVAsIDQsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19TQklfQUREUiwgNCwgRl9EUFksIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X1BJWENMS19HQVRFLCA0LCBGX0RQWSwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCisJezB4NjRFNjAsIDB4NTAsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVM TH0sCisJezB4NjRFYzAsIDB4NTAsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4 NjRGMjAsIDB4NTAsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4NjRGODAsIDB4 NTAsIEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19IU1dfQVVEX0NPTkZJR19BLCA0 LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDY1MEMwLCA0LCBGX0RQWSwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19UUkFOU19ERElfRlVOQ19DVExfQSwgNCwgRl9EUFks IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1RSQU5TX0RESV9GVU5DX0NUTF9CLCA0LCBGX0RQ WSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfVFJBTlNfRERJX0ZVTkNfQ1RMX0MsIDQsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19UUkFOU19ERElfRlVOQ19DVExfRURQLCA0 LCBGX0RQWSwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJe19UUkFOU0FfTVNBX01JU0MsIDQs IEZfRFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19UUkFOU0JfTVNBX01JU0MsIDQsIEZf RFBZLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19UUkFOU0NfTVNBX01JU0MsIDQsIEZfRFBZ LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4NkY0MTAsIDQsIEZfRFBZLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisKKwkvKiAtLS0tLS0tb3RoZXJzLS0tLS0tLS0tLSAqLworCXtfRk9SQ0VX QUtFX01ULCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBtdF9mb3JjZV93YWtlX3dyaXRlfSwK Kwl7X0ZPUkNFV0FLRV9BQ0tfSFNXLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X0VDT0JVUywgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JD X0NPTlRST0wsIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SQ19T VEFURSwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQTlNXUkVR LCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZfUkNfVklERU9fRlJF USwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX0RPV05fVElN RU9VVCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX0lOVEVS UlVQVF9MSU1JVFMsIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9S UFNUQVQxLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZfUlBfQ09O VFJPTCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX1VQX1RI UkVTSE9MRCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX0RP V05fVEhSRVNIT0xELCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZf UlBfQ1VSX1VQX0VJLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZf UlBfQ1VSX1VQLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZfUlBf UFJFVl9VUCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX0NV Ul9ET1dOX0VJLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZfUlBf Q1VSX0RPV04sIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SUF9Q UkVWX0RPV04sIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SUF9V UF9FSSwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JQX0RPV05f RUksIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SUF9JRExFX0hZ U1RFUlNJUywgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JDMV9X QUtFX1JBVEVfTElNSVQsIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VO Nl9SQzZfV0FLRV9SQVRFX0xJTUlULCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwK Kwl7X0dFTjZfUkM2cHBfV0FLRV9SQVRFX0xJTUlULCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxM LCBOVUxMfSwKKwl7X0dFTjZfUkNfRVZBTFVBVElPTl9JTlRFUlZBTCwgNCwgRl9ET00wLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JDX0lETEVfSFlTVEVSU0lTLCA0LCBGX0RPTTAs IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjZfUkNfU0xFRVAsIDQsIEZfRE9NMCwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SQzFlX1RIUkVTSE9MRCwgNCwgRl9ET00wLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JDNl9USFJFU0hPTEQsIDQsIEZfRE9NMCwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9SQzZwX1RIUkVTSE9MRCwgNCwgRl9ET00w LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1JDNnBwX1RIUkVTSE9MRCwgNCwgRl9E T00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X1BNSU5UUk1TSywgNCwgRl9ET00w LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19HRU42X0dEUlNULCA0LCBGX0RPTTAsIDAsIERf QUxMLCBOVUxMLCBnZHJzdF9tbWlvX3dyaXRlfSwKKworCXsweDEwMDAwMCwgMHg4MCwgRl9WSVJU LCAwLCBEX0FMTCwgZmVuY2VfbW1pb19yZWFkLCBmZW5jZV9tbWlvX3dyaXRlfSwKKwl7VkdUX1BW SU5GT19QQUdFLCBWR1RfUFZJTkZPX1NJWkUsIEZfVklSVCwgMCwgRF9BTEwsIHB2aW5mb19yZWFk LCBwdmluZm9fd3JpdGV9LAorCisJLyogVE9ETzogTUNIQkFSLCBzdXBwb3NlIHJlYWQtb25seSAq LworCXtNQ0hCQVJfTUlSUk9SX0JBU0VfU05CLCAweDQwMDAwLCBGX1ZJUlQsIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKworCXtfVElMRUNUTCwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVM TH0sCisKKwl7X0dFTjZfVUNHQ1RMMSwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJe19HRU42X1VDR0NUTDIsIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJ e19SRUdfU1dGLCAweDkwLCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtfR0VO Nl9QQ09ERV9NQUlMQk9YLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dF TjZfUENPREVfREFUQSwgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4MTM4 MTJjLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dFTjdfRVJSX0lOVCwg NCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4MTIwMDEwLCA0LCBGX1ZJUlQs IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg5MDA4LCA0LCBGX0RPTTAsIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7X0dGWF9GTFNIX0NOVExfR0VONiwgNCwgRl9QVCwgMCwgRF9BTEwsIE5V TEwsIE5VTEx9LAorCisJLyogLS0tLS0tLXVuLWNhdGVnb3JpemVkIHJlZ3MtLS0tLS0tLS0gKi8K Kwl7MHgzYywgNCwgRl9ET00wLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ODYwLCA0LCBG X1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwkvKiBubyBkZWZpbml0aW9uIG9uIHRoaXMu IGZyb20gTGludXggKi8KKwl7X0VDT1NLUEQsIDQsIEZfUFQsIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKwl7MHgxMjFkMCwgNCwgRl9QVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9C TElUVEVSX0VDT1NLUEQsIDQsIEZfUFQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHg0MWQw LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dBQ19FQ09fQklUUywgNCwg Rl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19SRUdfMkRfQ0dfRElTLCA0LCBGX1ZJ UlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X1JFR18zRF9DR19ESVMsIDQsIEZfVklSVCwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUkVHXzNEX0NHX0RJUzIsIDQsIEZfVklSVCwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDcxMTgsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEws IE5VTEx9LAorCXsweDcxODAsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsw eDc0MDgsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDdjMDAsIDQsIEZf VklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfR0VONl9NQkNUTCwgNCwgRl9WSVJULCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4OTExYywgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVM TCwgTlVMTH0sCisJezB4OTEyMCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisK Kwl7X0dBQl9DVEwsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweDQ4ODAw LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhjZTA0NCwgNCwgRl9WSVJU LCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZTY1MDAsIDQsIEZfVklSVCwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXsweGU2NTA0LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxM fSwKKwl7MHhlNjYwMCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZTY2 MDQsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGU2NzAwLCA0LCBGX1ZJ UlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhlNjcwNCwgNCwgRl9WSVJULCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJezB4ZTY4MDAsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCXsweGU2ODA0LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtf UkVHX1NVUEVSX1FVRVVFX0NPTkZJRywgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJezB4ZWMwMDgsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGVjMDBj LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhlYzAwOCsweDE4LCA0LCBG X1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhlYzAwYysweDE4LCA0LCBGX1ZJUlQs IDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhlYzAwOCsweDE4KjIsIDQsIEZfVklSVCwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGVjMDBjKzB4MTgqMiwgNCwgRl9WSVJULCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJezB4ZWMwMDgrMHgxOCozLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBO VUxMLCBOVUxMfSwKKwl7MHhlYzAwYysweDE4KjMsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEws IE5VTEx9LAorCXsweGVjNDA4LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7 MHhlYzQwYywgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZWM0MDgrMHgx OCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZWM0MGMrMHgxOCwgNCwg Rl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZWM0MDgrMHgxOCoyLCA0LCBGX1ZJ UlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhlYzQwYysweDE4KjIsIDQsIEZfVklSVCwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGVjNDA4KzB4MTgqMywgNCwgRl9WSVJULCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZWM0MGMrMHgxOCozLCA0LCBGX1ZJUlQsIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7MHhmYzgxMCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVM TH0sCisJezB4ZmM4MWMsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGZj ODI4LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhmYzgzNCwgNCwgRl9W SVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZmNjMDAsIDQsIEZfVklSVCwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXsweGZjYzBjLCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBO VUxMfSwKKwl7MHhmY2MxOCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJezB4 ZmNjMjQsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXsweGZkMDAwLCA0LCBG X1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHhmZDAwYywgNCwgRl9WSVJULCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJezB4ZmQwMTgsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEws IE5VTEx9LAorCXsweGZkMDI0LCA0LCBGX1ZJUlQsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7 MHhmZDAzNCwgNCwgRl9WSVJULCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0sCisKKwkvKiBNQVhDTlQg bWVhbnMgbWF4IGlkbGUgY291bnQgKi8KKwl7X1JFR19SQ19QV1JDVFhfTUFYQ05ULCA0LCBGX0RP TTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHgxMjA1NCwgNCwgRl9ET00wLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJezB4MjIwNTQsIDQsIEZfRE9NMCwgMCwgRF9BTEwsIE5VTEwsIE5V TEx9LAorCXsweDFBMDU0LCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXsw eDQ0MDcwLCA0LCBGX0RPTTAsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKworCXtfRlBHQV9EQkcs IDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIGZwZ2FfZGJnX3dyaXRlfSwKKwl7X0dFTjZfR1Rf VEhSRUFEX1NUQVRVU19SRUcsIDQsIEZfVklSVCwgMCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCisJ Lypjb21tYW5kIGFjY2Vzc2VkIHJlZ2lzdGVycywgc3VwcGxlbWVudCBmb3IgcmVnIGF1ZGl0IGlu IGNtZCBwYXJzZXIqLworCXsweDIxNzgsIDQsIEZfUkRSLCAwLCBEX0FMTCwgTlVMTCwgTlVMTH0s CisJezB4MjE3YywgNCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHgxMjE3OCwg NCwgRl9SRFIsIDAsIERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7MHgxMjE3YywgNCwgRl9SRFIsIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0JDU19TV0NUUkwsIDQsIEZfUkRSLCAwLCBEX0FMTCwg TlVMTCwgTlVMTH0sCisJe19IU19JTlZPQ0FUSU9OX0NPVU5ULCA4LCBGX1JEUiwgMCwgRF9BTEws IE5VTEwsIE5VTEx9LAorCXtfRFNfSU5WT0NBVElPTl9DT1VOVCwgOCwgRl9SRFIsIDAsIERfQUxM LCBOVUxMLCBOVUxMfSwKKwl7X0lBX1ZFUlRJQ0VTX0NPVU5UICAsIDgsIEZfUkRSLCAwLCBEX0FM TCwgTlVMTCwgTlVMTH0sCisJe19JQV9QUklNSVRJVkVTX0NPVU5ULCA4LCBGX1JEUiwgMCwgRF9B TEwsIE5VTEwsIE5VTEx9LAorCXtfVlNfSU5WT0NBVElPTl9DT1VOVCwgOCwgRl9SRFIsIDAsIERf QUxMLCBOVUxMLCBOVUxMfSwKKwl7X0dTX0lOVk9DQVRJT05fQ09VTlQsIDgsIEZfUkRSLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisJe19HU19QUklNSVRJVkVTX0NPVU5ULCA4LCBGX1JEUiwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfQ0xfSU5WT0NBVElPTl9DT1VOVCwgOCwgRl9SRFIsIDAs IERfQUxMLCBOVUxMLCBOVUxMfSwKKwl7X0NMX1BSSU1JVElWRVNfQ09VTlQsIDgsIEZfUkRSLCAw LCBEX0FMTCwgTlVMTCwgTlVMTH0sCisJe19QU19JTlZPQ0FUSU9OX0NPVU5ULCA4LCBGX1JEUiwg MCwgRF9BTEwsIE5VTEwsIE5VTEx9LAorCXtfUFNfREVQVEhfQ09VTlQsIDgsIEZfUkRSLCAwLCBE X0FMTCwgTlVMTCwgTlVMTH0sCisKKwkvKiBCRFcgKi8KKwl7MHhlMTAwLCA0LCBGX1JEUiwgMCwg RF9BTEwsIE5VTEwsIE5VTEx9LAogfTsKIAogc3RydWN0IGd2dF9yZWdfaW5mbyBndnRfYnJvYWR3 ZWxsX3JlZ19pbmZvW10gPSB7Ci17MCwgMCwgMCwgMCwgMCwgTlVMTCwgTlVMTH0sCisJLyogSW50 ZXJydXB0IHJlZ2lzdGVycyAtIEdUICovCisJe19SSU5HX0lNUihHRU44X0JTRDJfUklOR19CQVNF KSwgNCwgRl9SRFIsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaW1yX2hhbmRsZXJ9LAor CisJLyogSW50ZXJydXB0IHJlZ2lzdGVycyAtIEJEVyAqLworCXtfUkVHX0dUX0lNUigwKSwgNCwg Rl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JF R19HVF9JRVIoMCksIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJf aGFuZGxlcn0sCisJe19SRUdfR1RfSUlSKDApLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5V TEwsIGd2dF9yZWdfaWlyX2hhbmRsZXJ9LAorCXtfUkVHX0dUX0lTUigwKSwgNCwgRl9WSVJULCAw LCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX0dUX0lNUigxKSwgNCwgRl9WSVJU LCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JFR19HVF9J RVIoMSksIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxl cn0sCisJe19SRUdfR1RfSUlSKDEpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2 dF9yZWdfaWlyX2hhbmRsZXJ9LAorCXtfUkVHX0dUX0lTUigxKSwgNCwgRl9WSVJULCAwLCBEX0JE V19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX0dUX0lNUigyKSwgNCwgRl9WSVJULCAwLCBE X0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JFR19HVF9JRVIoMiks IDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJ e19SRUdfR1RfSUlSKDIpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdf aWlyX2hhbmRsZXJ9LAorCXtfUkVHX0dUX0lTUigyKSwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVT LCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX0dUX0lNUigzKSwgNCwgRl9WSVJULCAwLCBEX0JEV19Q TFVTLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JFR19HVF9JRVIoMyksIDQsIEZf VklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJe19SRUdf R1RfSUlSKDMpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaWlyX2hh bmRsZXJ9LAorCXtfUkVHX0dUX0lTUigzKSwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKworCXtfUkVHX0RFX1BJUEVfSU1SKFBJUEVfQSksIDQsIEZfVklSVCwgMCwgRF9C RFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pbXJfaGFuZGxlcn0sCisJe19SRUdfREVfUElQRV9JRVIo UElQRV9BKSwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2llcl9oYW5k bGVyfSwKKwl7X1JFR19ERV9QSVBFX0lJUihQSVBFX0EpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BM VVMsIE5VTEwsIGd2dF9yZWdfaWlyX2hhbmRsZXJ9LAorCXtfUkVHX0RFX1BJUEVfSVNSKFBJUEVf QSksIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19ERV9Q SVBFX0lNUihQSVBFX0IpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdf aW1yX2hhbmRsZXJ9LAorCXtfUkVHX0RFX1BJUEVfSUVSKFBJUEVfQiksIDQsIEZfVklSVCwgMCwg RF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJe19SRUdfREVfUElQRV9J SVIoUElQRV9CKSwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2lpcl9o YW5kbGVyfSwKKwl7X1JFR19ERV9QSVBFX0lTUihQSVBFX0IpLCA0LCBGX1ZJUlQsIDAsIERfQkRX X1BMVVMsIE5VTEwsIE5VTEx9LAorCisJe19SRUdfREVfUElQRV9JTVIoUElQRV9DKSwgNCwgRl9W SVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X1JFR19E RV9QSVBFX0lFUihQSVBFX0MpLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9y ZWdfaWVyX2hhbmRsZXJ9LAorCXtfUkVHX0RFX1BJUEVfSUlSKFBJUEVfQyksIDQsIEZfVklSVCwg MCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19paXJfaGFuZGxlcn0sCisJe19SRUdfREVfUElQ RV9JU1IoUElQRV9DKSwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwor CXtfR0VOOF9ERV9QT1JUX0lNUiwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBndnRf cmVnX2ltcl9oYW5kbGVyfSwKKwl7X0dFTjhfREVfUE9SVF9JRVIsIDQsIEZfVklSVCwgMCwgRF9C RFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJe19HRU44X0RFX1BPUlRfSUlS LCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaWlyX2hhbmRsZXJ9LAor CXtfR0VOOF9ERV9QT1JUX0lTUiwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxM fSwKKworCXtfR0VOOF9ERV9NSVNDX0lNUiwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxM LCBndnRfcmVnX2ltcl9oYW5kbGVyfSwKKwl7X0dFTjhfREVfTUlTQ19JRVIsIDQsIEZfVklSVCwg MCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0X3JlZ19pZXJfaGFuZGxlcn0sCisJe19HRU44X0RFX01J U0NfSUlSLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaWlyX2hhbmRs ZXJ9LAorCXtfR0VOOF9ERV9NSVNDX0lTUiwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKworCXtfR0VOOF9QQ1VfSU1SLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5V TEwsIGd2dF9yZWdfaW1yX2hhbmRsZXJ9LAorCXtfR0VOOF9QQ1VfSUVSLCA0LCBGX1ZJUlQsIDAs IERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaWVyX2hhbmRsZXJ9LAorCXtfR0VOOF9QQ1VfSUlS LCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIGd2dF9yZWdfaWlyX2hhbmRsZXJ9LAor CXtfR0VOOF9QQ1VfSVNSLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAor CisJe19HRU44X01BU1RFUl9JUlEsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgZ3Z0 X3JlZ19tYXN0ZXJfaXJxX2hhbmRsZXJ9LAorCisJLyogLS0tLS0tLXJlbmRlciByZWdzLS0tLS0t LS0tLSAqLworCXtfUklOR19IV1NUQU0oR0VOOF9CU0QyX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAw LCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCS8qIG1heWJlIGFuIGVycm9yIGluIExpbnV4 IGRyaXZlci4gbWVhbnQgZm9yIFZDU19IV1NfUEdBICovCisJe19SRUdfVkNTMl9VSFBUUiwgNCwg Rl9SRFJfSFdTVFMsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJe19SSU5HX1RBSUwo R0VOOF9CU0QyX1JJTkdfQkFTRSksIDQsIEZfUkRSLCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxM fSwKKwl7X1JJTkdfSEVBRChHRU44X0JTRDJfUklOR19CQVNFKSwgNCwgRl9SRFIsIDAsIERfQkRX X1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUklOR19TVEFSVChHRU44X0JTRDJfUklOR19CQVNFKSwg NCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0JEV19QTFVTLAorCQlOVUxMLCBOVUxMfSwK Kwl7X1JJTkdfQ1RMKEdFTjhfQlNEMl9SSU5HX0JBU0UpLCA0LCBGX1JEUiwgMCwgRF9CRFdfUExV UywgTlVMTCwgTlVMTH0sCisJe19SSU5HX0FDVEhEKEdFTjhfQlNEMl9SSU5HX0JBU0UpLCA0LCBG X1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe0dWVF9SSU5HX01PREUoR0VOOF9C U0QyX1JJTkdfQkFTRSksIDQsIEZfUkRSX01PREUsIDAsIERfQkRXX1BMVVMsIE5VTEwsIHJpbmdf bW9kZV93cml0ZX0sCisJe19SSU5HX01JX01PREUoR0VOOF9CU0QyX1JJTkdfQkFTRSksIDQsIEZf UkRSX01PREUsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUklOR19JTlNUUE0oR0VO OF9CU0QyX1JJTkdfQkFTRSksIDQsIEZfUkRSX01PREUsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5V TEx9LAorCisJe19SRUdfUkNTX0FDVEhEX1VEVywgNCwgRl9SRFIsIDAsIERfQkRXX1BMVVMsIE5V TEwsIE5VTEx9LAorCXtfUkVHX0JDU19BQ1RIRF9VRFcsIDQsIEZfUkRSLCAwLCBEX0JEV19QTFVT LCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WQ1NfQUNUSERfVURXLCA0LCBGX1JEUiwgMCwgRF9CRFdf UExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdfVkNTMl9BQ1RIRF9VRFcsIDQsIEZfUkRSLCAwLCBE X0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WRUNTX0FDVEhEX1VEVywgNCwgRl9SRFIs IDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJLyogVE9ETzogbmVlZCBhIGhhbmRsZXIg Ki8KKwl7MHgxYzA1MCwgNCwgRl9QVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7 X1JFR19WQ1MyX1RJTUVTVEFNUCwgOCwgRl9QVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0s CisKKwl7X1JFR19SQ1NfRVhFQ0xJU1RfU1VCTUlUUE9SVCwgNCwgRl9WSVJULCAwLCBEX0JEV19Q TFVTLAorCQltbWlvX25vdF9hbGxvd19yZWFkLCBOVUxMfSwKKwl7X1JFR19WQ1NfRVhFQ0xJU1Rf U1VCTUlUUE9SVCwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLAorCQltbWlvX25vdF9hbGxvd19y ZWFkLCBOVUxMfSwKKwl7X1JFR19WRUNTX0VYRUNMSVNUX1NVQk1JVFBPUlQsIDQsIEZfVklSVCwg MCwgRF9CRFdfUExVUywKKwkJbW1pb19ub3RfYWxsb3dfcmVhZCwgTlVMTH0sCisJe19SRUdfVkNT Ml9FWEVDTElTVF9TVUJNSVRQT1JULCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsCisJCW1taW9f bm90X2FsbG93X3JlYWQsIE5VTEx9LAorCXtfUkVHX0JDU19FWEVDTElTVF9TVUJNSVRQT1JULCA0 LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsCisJCW1taW9fbm90X2FsbG93X3JlYWQsIE5VTEx9LAor CisJe19SRUdfUkNTX0VYRUNMSVNUX1NUQVRVUywgOCwgRl9SRFIsIDAsIERfQkRXX1BMVVMsIE5V TEwsCisJCW1taW9fbm90X2FsbG93X3dyaXRlfSwKKwl7X1JFR19WQ1NfRVhFQ0xJU1RfU1RBVFVT LCA4LCBGX1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwKKwkJbW1pb19ub3RfYWxsb3dfd3JpdGV9 LAorCXtfUkVHX1ZFQ1NfRVhFQ0xJU1RfU1RBVFVTLCA4LCBGX1JEUiwgMCwgRF9CRFdfUExVUywg TlVMTCwKKwkJbW1pb19ub3RfYWxsb3dfd3JpdGV9LAorCXtfUkVHX1ZDUzJfRVhFQ0xJU1RfU1RB VFVTLCA4LCBGX1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwKKwkJbW1pb19ub3RfYWxsb3dfd3Jp dGV9LAorCXtfUkVHX0JDU19FWEVDTElTVF9TVEFUVVMsIDgsIEZfUkRSLCAwLCBEX0JEV19QTFVT LCBOVUxMLAorCQltbWlvX25vdF9hbGxvd193cml0ZX0sCisKKwl7X1JFR19SQ1NfQ1RYX1NSX0NU TCwgNCwgRl9SRFIsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDU19DVFhf U1JfQ1RMLCA0LCBGX1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdfVkVD U19DVFhfU1JfQ1RMLCA0LCBGX1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19S RUdfVkNTMl9DVFhfU1JfQ1RMLCA0LCBGX1JEUiwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0s CisJe19SRUdfQkNTX0NUWF9TUl9DVEwsIDQsIEZfUkRSLCAwLCBEX0JEV19QTFVTLCBOVUxMLCBO VUxMfSwKKworCXtfUkVHX1JDU19DVFhfU1RBVFVTX0JVRiwgNDgsIEZfVklSVCwgMCwgRF9CRFdf UExVUywgTlVMTCwKKwkJbW1pb19ub3RfYWxsb3dfd3JpdGV9LAorCXtfUkVHX1ZDU19DVFhfU1RB VFVTX0JVRiwgNDgsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwKKwkJbW1pb19ub3RfYWxs b3dfd3JpdGV9LAorCXtfUkVHX1ZFQ1NfQ1RYX1NUQVRVU19CVUYsIDQ4LCBGX1ZJUlQsIDAsIERf QkRXX1BMVVMsIE5VTEwsCisJCW1taW9fbm90X2FsbG93X3dyaXRlfSwKKwl7X1JFR19WQ1MyX0NU WF9TVEFUVVNfQlVGLCA0OCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLAorCQltbWlvX25v dF9hbGxvd193cml0ZX0sCisJe19SRUdfQkNTX0NUWF9TVEFUVVNfQlVGLCA0OCwgRl9WSVJULCAw LCBEX0JEV19QTFVTLCBOVUxMLAorCQltbWlvX25vdF9hbGxvd193cml0ZX0sCisKKwl7X1JFR19S Q1NfQ1RYX1NUQVRVU19QVFIsIDQsIEZfVklSVCB8IEdWVF9SRUdfTU9ERV9DVEwsIDAsIERfQkRX X1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDU19DVFhfU1RBVFVTX1BUUiwgNCwgRl9WSVJU IHwgR1ZUX1JFR19NT0RFX0NUTCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdf VkVDU19DVFhfU1RBVFVTX1BUUiwgNCwgRl9WSVJUIHwgR1ZUX1JFR19NT0RFX0NUTCwgMCwgRF9C RFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdfVkNTMl9DVFhfU1RBVFVTX1BUUiwgNCwgRl9W SVJUIHwgR1ZUX1JFR19NT0RFX0NUTCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19S RUdfQkNTX0NUWF9TVEFUVVNfUFRSLCA0LCBGX1ZJUlQgfCBHVlRfUkVHX01PREVfQ1RMLCAwLCBE X0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwkvKiAtLS0tLS0tZGlzcGxheSByZWdzLS0tLS0tLS0t LSAqLworCisJe19QSVBFX01JU0NfQSwgNCwgRl9EUFksIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5V TEx9LAorCisJe19QSVBFX01JU0NfQiwgNCwgRl9EUFksIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5V TEx9LAorCisJe19SRUdfUElQRV9NSVNDX0MsIDQsIEZfRFBZLCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKworCS8qIC0tLS0tLS1vdGhlcnMtLS0tLS0tLS0tICovCisKKwkvKiAtLS0tLS0t dW4tY2F0ZWdvcml6ZWQgcmVncy0tLS0tLS0tLSAqLworCS8qIG5vIGRlZmluaXRpb24gb24gdGhp cy4gZnJvbSBMaW51eCAqLworCXsweDFjMWQwLCA0LCBGX1BULCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKwl7X0dFTjZfTUJDVU5JVF9TTlBDUiwgNCwgRl9QVCwgMCwgRF9CRFdfUExVUywg TlVMTCwgTlVMTH0sCisJe19HRU43X01JU0NDUENUTCwgNCwgRl9QVCwgMCwgRF9CRFdfUExVUywg TlVMTCwgTlVMTH0sCisKKwl7MHgxQzA1NCwgNCwgRl9ET00wLCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKwkvKiBCRFcgKi8KKwl7X0dFTjhfUFJJVkFURV9QQVRfTE8sIDQsIEZfUFQsIDAs IERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfR0VOOF9QUklWQVRFX1BBVF9ISSwgNCwgRl9Q VCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X0dBTVRBUkJNT0RFLCA0LCBGX0RP TTAsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJe19SRUdfUkNTX1BEUF9VRFcoMCkg LCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1JDU19QRFBf TERXKDApICwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtfUkVH X1JDU19QRFBfVURXKDEpICwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwK Kwl7X1JFR19SQ1NfUERQX0xEVygxKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwg TlVMTH0sCisKKwl7X1JFR19SQ1NfUERQX1VEVygyKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExV UywgTlVMTCwgTlVMTH0sCisJe19SRUdfUkNTX1BEUF9MRFcoMikgLCA0LCBGX1ZJUlQsIDAsIERf QkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJe19SRUdfUkNTX1BEUF9VRFcoMykgLCA0LCBGX1ZJ UlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1JDU19QRFBfTERXKDMpICwg NCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX1ZDU19QRFBf VURXKDApICwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19W Q1NfUERQX0xEVygwKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisK Kwl7X1JFR19WQ1NfUERQX1VEVygxKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwg TlVMTH0sCisJe19SRUdfVkNTX1BEUF9MRFcoMSkgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMs IE5VTEwsIE5VTEx9LAorCisJe19SRUdfVkNTX1BEUF9VRFcoMikgLCA0LCBGX1ZJUlQsIDAsIERf QkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDU19QRFBfTERXKDIpICwgNCwgRl9WSVJU LCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtfUkVHX1ZDU19QRFBfVURXKDMpICwg NCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7X1JFR19WQ1NfUERQX0xE VygzKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19W RUNTX1BEUF9VRFcoMCkgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAor CXtfUkVHX1ZFQ1NfUERQX0xEVygwKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwg TlVMTH0sCisKKwl7X1JFR19WRUNTX1BEUF9VRFcoMSkgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BM VVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZFQ1NfUERQX0xEVygxKSAsIDQsIEZfVklSVCwgMCwg RF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19WRUNTX1BEUF9VRFcoMikgLCA0LCBG X1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZFQ1NfUERQX0xEVygy KSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19WRUNT X1BEUF9VRFcoMykgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtf UkVHX1ZFQ1NfUERQX0xEVygzKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVM TH0sCisKKwl7X1JFR19WQ1MyX1BEUF9VRFcoMCkgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMs IE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDUzJfUERQX0xEVygwKSAsIDQsIEZfVklSVCwgMCwgRF9C RFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19WQ1MyX1BEUF9VRFcoMSkgLCA0LCBGX1ZJ UlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX1ZDUzJfUERQX0xEVygxKSAs IDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19WQ1MyX1BE UF9VRFcoMikgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVH X1ZDUzJfUERQX0xEVygyKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0s CisKKwl7X1JFR19WQ1MyX1BEUF9VRFcoMykgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5V TEwsIE5VTEx9LAorCXtfUkVHX1ZDUzJfUERQX0xEVygzKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdf UExVUywgTlVMTCwgTlVMTH0sCisKKwl7X1JFR19CQ1NfUERQX1VEVygwKSAsIDQsIEZfVklSVCwg MCwgRF9CRFdfUExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdfQkNTX1BEUF9MRFcoMCkgLCA0LCBG X1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJe19SRUdfQkNTX1BEUF9VRFco MSkgLCA0LCBGX1ZJUlQsIDAsIERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCXtfUkVHX0JDU19Q RFBfTERXKDEpICwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKworCXtf UkVHX0JDU19QRFBfVURXKDIpICwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxM fSwKKwl7X1JFR19CQ1NfUERQX0xEVygyKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywgTlVM TCwgTlVMTH0sCisKKwl7X1JFR19CQ1NfUERQX1VEVygzKSAsIDQsIEZfVklSVCwgMCwgRF9CRFdf UExVUywgTlVMTCwgTlVMTH0sCisJe19SRUdfQkNTX1BEUF9MRFcoMykgLCA0LCBGX1ZJUlQsIDAs IERfQkRXX1BMVVMsIE5VTEwsIE5VTEx9LAorCisJezB4MjA4MCwgNCwgRl9SRFJfQURSRklYLCAw eEZGRkZGMDAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7MHgxMjA4MCwgNCwgRl9SRFJf QURSRklYLCAweEZGRkZGMDAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7MHgxYzA4MCwg NCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0JEV19QTFVTLCBOVUxMLCBOVUxMfSwKKwl7 MHgxYTA4MCwgNCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0JEV19QTFVTLCBOVUxMLCBO VUxMfSwKKwl7MHgyMjA4MCwgNCwgRl9SRFJfQURSRklYLCAweEZGRkZGMDAwLCBEX0JEV19QTFVT LCBOVUxMLCBOVUxMfSwKKworCXsweDczMDAsIDQsIEZfUkRSLCAwLCBEX0JEV19QTFVTLCBOVUxM LCBOVUxMfSwKKworCXsweDQyMGIwLCA0LCBGX0RQWSwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAor CXsweDQyMGI0LCA0LCBGX0RQWSwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweDQyMGI4LCA0 LCBGX0RQWSwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCisJezB4NDUyNjAsIDQsIEZfRFBZLCAw LCBEX0JEVywgTlVMTCwgTlVMTH0sCisJezB4NmY4MDAsIDQsIEZfRFBZLCAwLCBEX0JEVywgTlVM TCwgTlVMTH0sCisKKwl7MHg2NmMwMCwgNCwgRl9WSVJULCAwLCBEX0JEV19QTFVTLCBOVUxMLCBO VUxMfSwKKwl7MHg2NmMwNCwgNCwgRl9WSVJULCAwLCBEX0JEVywgTlVMTCwgTlVMTH0sCisKKwl7 MHg0MDI0LCA0LCBGX0RPTTAsIDAsIERfQkRXLCBOVUxMLCBOVUxMfSwKKworCXsweDkxMzQsIDQs IEZfVklSVCwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweDkxMzgsIDQsIEZfVklSVCwgMCwg RF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweDkxM2MsIDQsIEZfVklSVCwgMCwgRF9CRFcsIE5VTEws IE5VTEx9LAorCisJLyogV0EgKi8KKwl7MHhmZGMsIDQsIEZfRE9NMCwgMCwgRF9CRFcsIE5VTEws IE5VTEx9LAorCXsweGU0ZjAsIDQsIEZfUkRSLCAwLCBEX0JEVywgTlVMTCwgTlVMTH0sCisJezB4 ZTRmNCwgNCwgRl9SRFIsIDAsIERfQkRXLCBOVUxMLCBOVUxMfSwKKwl7MHg5NDMwLCA0LCBGX1JE UiwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCisJLyogTDMgKi8KKwl7MHhiMWYwLCA0LCBGX1JE UiwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweGIxYzAsIDQsIEZfUkRSLCAwLCBEX0JEVywg TlVMTCwgTlVMTH0sCisJezB4YjExOCwgNCwgRl9SRFIsIDAsIERfQkRXLCBOVUxMLCBOVUxMfSwK Kwl7MHhiMTAwLCA0LCBGX1JEUiwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweGIxMGMsIDQs IEZfUkRSLCAwLCBEX0JEVywgTlVMTCwgTlVMTH0sCisJezB4YjExMCwgNCwgRl9QVCwgMCwgRF9C RFcsIE5VTEwsIE5VTEx9LAorCisJLyogTk9OLVBSSVYgKi8KKwl7MHgyNGQwLCA0LCBGX1JEUiwg MCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCXsweDI0ZDQsIDQsIEZfUkRSLCAwLCBEX0JEVywgTlVM TCwgTlVMTH0sCisJezB4MjRkOCwgNCwgRl9SRFIsIDAsIERfQkRXLCBOVUxMLCBOVUxMfSwKKwl7 MHgyNGRjLCA0LCBGX1JEUiwgMCwgRF9CRFcsIE5VTEwsIE5VTEx9LAorCisJezB4ODNhNCwgNCwg Rl9SRFIsIDAsIERfQkRXLCBOVUxMLCBOVUxMfSwKKwl7MHg0ZGQ0LCA0LCBGX1BULCAwLCBEX0JE VywgTlVMTCwgTlVMTH0sCisKKwkvKiBVQ0cgKi8KKwl7MHg4NDMwLCA0LCBGX1BULCAwLCBEX0JE VywgTlVMTCwgTlVMTH0sCisKKwl7MHgxMTAwMDAsIDQsIEZfVklSVCwgMCwgRF9CRFdfUExVUywg TlVMTCwgTlVMTH0sCiB9OwogCiBpbnQgZ3Z0X2dldF9yZWdfbnVtKGludCB0eXBlKQogewotICAg ICAgICBzd2l0Y2godHlwZSl7CisgICAgICAgIHN3aXRjaCAodHlwZSkgewogICAgICAgICAgICAg ICAgIGNhc2UgRF9BTEw6CiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQVJSQVlfU0la RShndnRfZ2VuZXJhbF9yZWdfaW5mbyk7CiAgICAgICAgICAgICAgICAgY2FzZSBEX0JEVzoKQEAg LTQyLDYgKzExMzEsNSBAQCBpbnQgZ3Z0X2dldF9yZWdfbnVtKGludCB0eXBlKQogICAgICAgICAg ICAgICAgIGRlZmF1bHQ6CiAJCQlyZXR1cm4gMDsKICAgICAgICAgfQotCiAgICAgICAgIHJldHVy biAwOwogfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2luc3RhbmNlLmMg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaW5zdGFuY2UuYwppbmRleCA5MWY1MmM2Li4wYmY2 MmU0IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaW5zdGFuY2UuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvaW5zdGFuY2UuYwpAQCAtMjI4LDYgKzIyOCw4IEBA IHN0cnVjdCB2Z3RfZGV2aWNlICpndnRfY3JlYXRlX2luc3RhbmNlKHN0cnVjdCBwZ3RfZGV2aWNl ICpwZGV2LAogCXZndC0+aWQgPSBpZDsKIAl2Z3QtPnBkZXYgPSBwZGV2OwogCisJdmd0LT53YXJu X3VudHJhY2sgPSB0cnVlOworCiAJaWYgKCFjcmVhdGVfdmlydHVhbF9kZXZpY2Vfc3RhdGUodmd0 LCBpbmZvKSkKIAkJZ290byBlcnI7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1 L2d2dC9pbnRlcnJ1cHQuaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9pbnRlcnJ1cHQuaApp bmRleCBjZWU4NWI2Li4zMTQyZWQ2IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9n dnQvaW50ZXJydXB0LmgKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0L2ludGVycnVwdC5o CkBAIC0yMjksNCArMjI5LDE4IEBAIHN0cnVjdCBndnRfaXJxX3N0YXRlIHsKIGJvb2wgZ3Z0X2ly cV9pbml0KHN0cnVjdCBwZ3RfZGV2aWNlICpwZGV2KTsKIHZvaWQgZ3Z0X2lycV9leGl0KHN0cnVj dCBwZ3RfZGV2aWNlICpwZGV2KTsKIAorYm9vbCBndnRfcmVnX2ltcl9oYW5kbGVyKHN0cnVjdCB2 Z3RfZGV2aWNlICp2Z3QsCisJdW5zaWduZWQgaW50IHJlZywgdm9pZCAqcF9kYXRhLCB1bnNpZ25l ZCBpbnQgYnl0ZXMpOworYm9vbCBndnRfcmVnX2llcl9oYW5kbGVyKHN0cnVjdCB2Z3RfZGV2aWNl ICp2Z3QsCisJdW5zaWduZWQgaW50IHJlZywgdm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0 ZXMpOworYm9vbCBndnRfcmVnX2lpcl9oYW5kbGVyKHN0cnVjdCB2Z3RfZGV2aWNlICp2Z3QsIHVu c2lnbmVkIGludCByZWcsCisJdm9pZCAqcF9kYXRhLCB1bnNpZ25lZCBpbnQgYnl0ZXMpOworYm9v bCBndnRfcmVnX2lzcl93cml0ZShzdHJ1Y3Qgdmd0X2RldmljZSAqdmd0LCB1bnNpZ25lZCBpbnQg cmVnLAorCXZvaWQgKnBfZGF0YSwgdW5zaWduZWQgaW50IGJ5dGVzKTsKK2Jvb2wgZ3Z0X3JlZ19t YXN0ZXJfaXJxX2hhbmRsZXIoc3RydWN0IHZndF9kZXZpY2UgKnZndCwKKwl1bnNpZ25lZCBpbnQg cmVnLCB2b2lkICpwX2RhdGEsIHVuc2lnbmVkIGludCBieXRlcyk7Cit2b2lkIGd2dF90cmlnZ2Vy X3ZpcnR1YWxfZXZlbnQoc3RydWN0IHZndF9kZXZpY2UgKnZndCwKKwllbnVtIGd2dF9ldmVudF90 eXBlIGV2ZW50KTsKK3ZvaWQgZ3Z0X2luamVjdF9mbGlwX2RvbmUoc3RydWN0IHZndF9kZXZpY2Ug KnZndCwgaW50IHBpcGUpOworCiAjZW5kaWYgLyogX0dWVF9JTlRFUlJVUFRfSF8gKi8KZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9tbWlvLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9ndnQvbW1pby5jCmluZGV4IDMyOTdkODIuLmU4M2FkMWUgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2d2dC9tbWlvLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0 L21taW8uYwpAQCAtMjMsNyArMjMsNyBAQAogCiAjaW5jbHVkZSAiZ3Z0LmgiCiAKLXN0YXRpYyBp bmxpbmUgdW5zaWduZWQgaW50IGdldF9kZXZpY2VfdHlwZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRl dikKK3Vuc2lnbmVkIGludCBndnRfZ2V0X2RldmljZV90eXBlKHN0cnVjdCBwZ3RfZGV2aWNlICpw ZGV2KQogewogCWlmIChJU19CUk9BRFdFTEwocGRldi0+ZGV2X3ByaXYpKQogCQlyZXR1cm4gRF9C RFc7CkBAIC0zMiw3ICszMiw3IEBAIHN0YXRpYyBpbmxpbmUgdW5zaWduZWQgaW50IGdldF9kZXZp Y2VfdHlwZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldikKIAogc3RhdGljIGlubGluZSBib29sIG1h dGNoX2RldmljZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRldiwgc3RydWN0IGd2dF9yZWdfaW5mbyAq aW5mbykKIHsKLQlyZXR1cm4gaW5mby0+ZGV2aWNlICYgZ2V0X2RldmljZV90eXBlKHBkZXYpOwor CXJldHVybiBpbmZvLT5kZXZpY2UgJiBndnRfZ2V0X2RldmljZV90eXBlKHBkZXYpOwogfQogCiBz dGF0aWMgdm9pZCBzYXZlX2luaXRpYWxfbW1pb19zdGF0ZShzdHJ1Y3QgcGd0X2RldmljZSAqcGRl diwKQEAgLTUxNCwzICs1MTQsMzIgQEAgZXJyOgogICAgICAgIG11dGV4X3VubG9jaygmcGRldi0+ bG9jayk7CiAgICAgICAgcmV0dXJuIGZhbHNlOwogfQorCitzdGF0aWMgdW5zaWduZWQgbG9uZyBy aW5nX21taW9fYmFzZVtdID0geworCVtSQ1NdID0gUkVOREVSX1JJTkdfQkFTRSwKKwlbQkNTXSA9 IEJMVF9SSU5HX0JBU0UsCisJW1ZDU10gPSBHRU42X0JTRF9SSU5HX0JBU0UsCisJW1ZFQ1NdID0g VkVCT1hfUklOR19CQVNFLAorCVtWQ1MyXSA9IEdFTjhfQlNEMl9SSU5HX0JBU0UsCit9OworCitp bnQgZ3Z0X3JlbmRlcl9tbWlvX3RvX3JpbmdfaWQodW5zaWduZWQgaW50IHJlZykKK3sKKwlpbnQg aTsKKworCXJlZyAmPSB+MHhmZmY7CisKKwlmb3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShyaW5n X21taW9fYmFzZSk7IGkrKykgeworCQlpZiAocmluZ19tbWlvX2Jhc2VbaV0gPT0gcmVnKQorCQkJ cmV0dXJuIGk7CisJfQorCisJQVNTRVJUKDApOworCXJldHVybiAtMTsKK30KKworaW50IGd2dF9y aW5nX2lkX3RvX3JlbmRlcl9tbWlvX2Jhc2UoaW50IHJpbmdfaWQpCit7CisJQVNTRVJUKHJpbmdf aWQgPj0gMCAmJiByaW5nX2lkIDwgKEFSUkFZX1NJWkUocmluZ19tbWlvX2Jhc2UpKSk7CisJcmV0 dXJuIHJpbmdfbW1pb19iYXNlW3JpbmdfaWRdOworfQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2k5MTUvZ3Z0L21taW8uaCBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9tbWlvLmgKaW5k ZXggNDMwMTY1NS4uNzFhZTQ3YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvZ3Z0 L21taW8uaAorKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvbW1pby5oCkBAIC00OCw2ICs0 OCwxOCBAQAogCiAjZGVmaW5lIEdWVF9BVVhfVEFCTEVfTlVNCTI1NgogCisjZGVmaW5lIEZfVklS VAkJCUdWVF9SRUdfVklSVAorCisjZGVmaW5lIEZfRE9NMAkJCUZfVklSVAorI2RlZmluZSBGX1JE UgkJCUZfVklSVAorI2RlZmluZSBGX1JEUl9BRFJGSVgJCUZfVklSVAorI2RlZmluZSBGX1JEUl9I V1NUUwkJRl9WSVJUCisjZGVmaW5lIEZfUkRSX01PREUJCUZfVklSVAorI2RlZmluZSBGX0RQWQkJ CUZfVklSVAorI2RlZmluZSBGX0RQWV9BRFJGSVgJCUZfVklSVAorI2RlZmluZSBGX0RQWV9IV1NU U19BRFJGSVgJRl9WSVJUCisjZGVmaW5lIEZfUFQJCQlGX1ZJUlQKKwogLyogc3VwcG9zZSBhIHJl ZyB3b24ndCBzZXQgYm90aCBiaXRzICovCiB0eXBlZGVmIHVuaW9uIHsKIAlzdHJ1Y3QgewpAQCAt ODEsMTEgKzkzLDEzIEBAIHN0cnVjdCBndnRfcmVnX2luZm8gewogCWd2dF9tbWlvX2hhbmRsZXJf dCB3cml0ZTsKIH07CiAKK3N0cnVjdCBwZ3RfZGV2aWNlOworCiBleHRlcm4gc3RydWN0IGd2dF9y ZWdfaW5mbyBndnRfZ2VuZXJhbF9yZWdfaW5mb1tdOwogZXh0ZXJuIHN0cnVjdCBndnRfcmVnX2lu Zm8gZ3Z0X2Jyb2Fkd2VsbF9yZWdfaW5mb1tdOwogZXh0ZXJuIGludCBndnRfZ2V0X3JlZ19udW0o aW50IHR5cGUpOworZXh0ZXJuIHVuc2lnbmVkIGludCBndnRfZ2V0X2RldmljZV90eXBlKHN0cnVj dCBwZ3RfZGV2aWNlICpwZGV2KTsKIAogYm9vbCBndnRfZW11bGF0ZV9tbWlvX3JlYWQoc3RydWN0 IHZndF9kZXZpY2UgKnZndCwgdWludDY0X3QgcGEsIHZvaWQgKnBfZGF0YSxpbnQgYnl0ZXMpOwog Ym9vbCBndnRfZW11bGF0ZV9tbWlvX3dyaXRlKHN0cnVjdCB2Z3RfZGV2aWNlICp2Z3QsIHVpbnQ2 NF90IHBhLCB2b2lkICpwX2RhdGEsaW50IGJ5dGVzKTsKLQogI2VuZGlmCmRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQvcmVnLmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9ndnQv cmVnLmgKaW5kZXggYzY2YTJkYy4uMTc1ODA5MiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvZ3Z0L3JlZy5oCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2d2dC9yZWcuaApAQCAt NjgsNiArNjgsMTA3IEBACiAjZGVmaW5lICAgIF9SRUdCSVRfQkRXX0dNQ0hfR01TX1NISUZUICAg OAogI2RlZmluZSAgICBfUkVHQklUX0JEV19HTUNIX0dNU19NQVNLICAgIDB4ZmYKIAorI2RlZmlu ZSBfR1ZUX01NSU9fVEhST1VHSF9PRkZTRVQoaW5kZXgsIGEsIGIpCSgoYSkgKyAoaW5kZXgpKigo YiktKGEpKSkKKyNkZWZpbmUgX0dWVF9NTUlPX0dFVF9JTkRFWChyZWcsIGEsIGIpCQkoKChyZWcp LShhKSkvKChiKS0oYSkpKQorCisjZGVmaW5lIF9HVlRfR0VUX1BJUEUocmVnLCBhLCBiKQlfR1ZU X01NSU9fR0VUX0lOREVYKHJlZywgYSwgYikKKyNkZWZpbmUgX0dWVF9HRVRfUE9SVChyZWcsIGEs IGIpCV9HVlRfTU1JT19HRVRfSU5ERVgocmVnLCBhLCBiKQorCisjZGVmaW5lIF9SRUdfR0FDX01P REUJCTB4MTIwQTAKKyNkZWZpbmUgX1JFR19HQUJfTU9ERQkJMHgyMjBBMAorCisjZGVmaW5lIF9S RUdfUkNTX0JCX0FERFIJMHgyMTQwCisjZGVmaW5lIF9SRUdfVkNTX0JCX0FERFIJMHgxMjE0MAor I2RlZmluZSBfUkVHX0JDU19CQl9BRERSCTB4MjIxNDAKKyNkZWZpbmUgX1JFR19WRUNTX0JCX0FE RFIJMHgxQTE0MAorI2RlZmluZSBfUkVHX1ZDUzJfQkJfQUREUgkweDFjMTQwCisKKyNkZWZpbmUg X1JFR19WRUNTX0NUWF9XQV9CQl9BRERSIDB4MUExNDQKKworI2RlZmluZSBfUkVHX1JDU19FWEND CQkweDIwMjgKKyNkZWZpbmUgX1JFR19WQ1NfRVhDQwkJMHgxMjAyOAorI2RlZmluZSBfUkVHX0JD U19FWENDCQkweDIyMDI4CisjZGVmaW5lIF9SRUdfVkVDU19FWENDCQkweDFBMDI4CisjZGVmaW5l IF9SRUdfVkNTMl9FWENDCQkweDFjMDI4CisKKyNkZWZpbmUgX1JFR19SQ1NfVUhQVFIJCTB4MjEz NAorI2RlZmluZSBfUkVHX1ZDU19VSFBUUgkJMHgxMjEzNAorI2RlZmluZSBfUkVHX0JDU19VSFBU UgkJMHgyMjEzNAorI2RlZmluZSBfUkVHX1ZFQ1NfVUhQVFIJCTB4MUExMzQKKyNkZWZpbmUgX1JF R19WQ1MyX1VIUFRSCQkweDFjMTM0CisKKyNkZWZpbmUgX1JFR19SQ1NfQUNUSERfVURXCTB4MjA1 YworI2RlZmluZSBfUkVHX1ZDU19BQ1RIRF9VRFcJMHgxMjA1YworI2RlZmluZSBfUkVHX0JDU19B Q1RIRF9VRFcJMHgyMjA1YworI2RlZmluZSBfUkVHX1ZFQ1NfQUNUSERfVURXCTB4MUEwNWMKKyNk ZWZpbmUgX1JFR19WQ1MyX0FDVEhEX1VEVwkweDFjMDVjCisKKyNkZWZpbmUgX1JFR19SQ1NfQkJf UFJFRU1QVF9BRERSCTB4MjE0OAorI2RlZmluZSBfUkVHX1JDU19CQl9BRERSX0RJRkYJCTB4MjE1 NAorCisjZGVmaW5lIF9SRUdfUkNTX1RJTUVTVEFNUAkweDIzNTgKKyNkZWZpbmUgX1JFR19WQ1Nf VElNRVNUQU1QCTB4MTIzNTgKKyNkZWZpbmUgX1JFR19WQ1MyX1RJTUVTVEFNUAkweDFjMzU4Cisj ZGVmaW5lIF9SRUdfQkNTX1RJTUVTVEFNUAkweDIyMzU4CisKKyNkZWZpbmUgR1ZUX1JJTkdfTU9E RShiYXNlKSAoYmFzZSArIDB4MjljKQorCisjZGVmaW5lIFJCX0hFQURfT0ZGX01BU0sgICAgICAg ICgoMVUgPDwgMjEpIC0gKDFVIDw8IDIpKQorI2RlZmluZSBSQl9UQUlMX09GRl9NQVNLICAgICAg ICgoMVUgPDwgMjEpIC0gKDFVIDw8IDMpKSAgICAgICAgLyogYml0IDMgdG8gMjAgKi8KKyNkZWZp bmUgUkJfVEFJTF9TSVpFX01BU0sgICAgICAoKDFVIDw8IDIxKSAtICgxVSA8PCAxMikpICAgICAg IC8qIGJpdCAxMiB0byAyMCAqLworI2RlZmluZSBfUklOR19DVExfQlVGX1NJWkUoY3RsKSAgICAg ICAgKCgoY3RsKSAmIFJCX1RBSUxfU0laRV9NQVNLKSArIEdUVF9QQUdFX1NJWkUpCisKKyNkZWZp bmUgX0VMX0JBU0VfUkNTCQkweDAyMDAwCisjZGVmaW5lIF9FTF9CQVNFX1ZDUwkJMHgxMjAwMAor I2RlZmluZSBfRUxfQkFTRV9WRUNTCQkweDFBMDAwCisjZGVmaW5lIF9FTF9CQVNFX1ZDUzIJCTB4 MUMwMDAKKyNkZWZpbmUgX0VMX0JBU0VfQkNTCQkweDIyMDAwCisKKyNkZWZpbmUgX0VMX09GRlNF VF9TVUJNSVRQT1JUCTB4MjMwCisjZGVmaW5lIF9FTF9PRkZTRVRfU1RBVFVTCTB4MjM0CisjZGVm aW5lIF9FTF9PRkZTRVRfU1JfQ1RMCTB4MjQ0CisjZGVmaW5lIF9FTF9PRkZTRVRfU1RBVFVTX0JV RgkweDM3MAorI2RlZmluZSBfRUxfT0ZGU0VUX1NUQVRVU19QVFIJMHgzQTAKKworI2RlZmluZSBf UkVHX1JDU19FWEVDTElTVF9TVUJNSVRQT1JUCTB4MDIyMzAKKyNkZWZpbmUgX1JFR19WQ1NfRVhF Q0xJU1RfU1VCTUlUUE9SVAkweDEyMjMwCisjZGVmaW5lIF9SRUdfVkVDU19FWEVDTElTVF9TVUJN SVRQT1JUCTB4MUEyMzAKKyNkZWZpbmUgX1JFR19WQ1MyX0VYRUNMSVNUX1NVQk1JVFBPUlQJMHgx QzIzMAorI2RlZmluZSBfUkVHX0JDU19FWEVDTElTVF9TVUJNSVRQT1JUCTB4MjIyMzAKKworI2Rl ZmluZSBfRVhFQ0xJU1RfTFJDQV9NQVNLCQkweGZmZmZmMDAwCisKKyNkZWZpbmUgX1JFR19SQ1Nf RVhFQ0xJU1RfU1RBVFVTCTB4MDIyMzQKKyNkZWZpbmUgX1JFR19WQ1NfRVhFQ0xJU1RfU1RBVFVT CTB4MTIyMzQKKyNkZWZpbmUgX1JFR19WRUNTX0VYRUNMSVNUX1NUQVRVUwkweDFBMjM0CisjZGVm aW5lIF9SRUdfVkNTMl9FWEVDTElTVF9TVEFUVVMJMHgxQzIzNAorI2RlZmluZSBfUkVHX0JDU19F WEVDTElTVF9TVEFUVVMJMHgyMjIzNAorCisjZGVmaW5lIF9SRUdfUkNTX0NUWF9TUl9DVEwJMHgw MjI0NAorI2RlZmluZSBfUkVHX1ZDU19DVFhfU1JfQ1RMCTB4MTIyNDQKKyNkZWZpbmUgX1JFR19W RUNTX0NUWF9TUl9DVEwJMHgxQTI0NAorI2RlZmluZSBfUkVHX1ZDUzJfQ1RYX1NSX0NUTAkweDFD MjQ0CisjZGVmaW5lIF9SRUdfQkNTX0NUWF9TUl9DVEwJMHgyMjI0NAorCisjZGVmaW5lIF9SRUdf UkNTX0NUWF9TVEFUVVNfQlVGCQkweDAyMzcwCisjZGVmaW5lIF9SRUdfVkNTX0NUWF9TVEFUVVNf QlVGCQkweDEyMzcwCisjZGVmaW5lIF9SRUdfVkVDU19DVFhfU1RBVFVTX0JVRgkweDFBMzcwCisj ZGVmaW5lIF9SRUdfVkNTMl9DVFhfU1RBVFVTX0JVRgkweDFDMzcwCisjZGVmaW5lIF9SRUdfQkNT X0NUWF9TVEFUVVNfQlVGCQkweDIyMzcwCisKKyNkZWZpbmUgX1JFR19SQ1NfQ1RYX1NUQVRVU19Q VFIJCTB4MDIzQTAKKyNkZWZpbmUgX1JFR19WQ1NfQ1RYX1NUQVRVU19QVFIJCTB4MTIzQTAKKyNk ZWZpbmUgX1JFR19WRUNTX0NUWF9TVEFUVVNfUFRSCTB4MUEzQTAKKyNkZWZpbmUgX1JFR19WQ1My X0NUWF9TVEFUVVNfUFRSCTB4MUMzQTAKKyNkZWZpbmUgX1JFR19CQ1NfQ1RYX1NUQVRVU19QVFIJ CTB4MjIzQTAKKworI2RlZmluZSBfUkVHX0NVUkFTVVJGTElWRQkweDcwMEFDCisKKyNkZWZpbmUg X1JFR19DVVJBUEFMRVRfMAkweDcwMDkwCisjZGVmaW5lIF9SRUdfQ1VSQVBBTEVUXzEJMHg3MDA5 NAorI2RlZmluZSBfUkVHX0NVUkFQQUxFVF8yCTB4NzAwOTgKKyNkZWZpbmUgX1JFR19DVVJBUEFM RVRfMwkweDcwMDlDCisKICNkZWZpbmUJX1BSSV9QTEFORV9GTVRfU0hJRlQJMjYKICNkZWZpbmUJ X1BSSV9QTEFORV9USUxFX1NISUZUCTEwCiAKQEAgLTQ3NSw2ICs1NzYsODAgQEAgdW5pb24gX1RS QU5TX0NPTkZJRwogI2RlZmluZSBfR0VONl9HVF9USFJFQURfU1RBVFVTX1JFRwkweDEzODA1Ywog I2RlZmluZSBfR0VONl9HVF9DT1JFX1NUQVRVUwkJMHgxMzgwNjAKIAorI2RlZmluZSBfRk9SQ0VX QUtFX01UCQkJMHhhMTg4CisjZGVmaW5lIF9GT1JDRVdBS0VfQUNLX0hTVwkJMHgxMzAwNDQKKyNk ZWZpbmUgX1NCSV9BRERSCQkJMHhDNjAwMAorI2RlZmluZSBfU0JJX0RBVEEJCQkweEM2MDA0Cisj ZGVmaW5lIF9TQklfQ1RMX1NUQVQJCQkweEM2MDA4CisKKyNkZWZpbmUgX1JJTkdfSU1SKGJhc2Up CQkJKChiYXNlKSArIDB4YTgpCisjZGVmaW5lIF9TUExMX0NUTAkJCTB4NDYwMjAKKyNkZWZpbmUg X1NGVVNFX1NUUkFQCQkJMHhjMjAxNAorI2RlZmluZSBfUElYQ0xLX0dBVEUJCQkweEM2MDIwCisj ZGVmaW5lIF9FQ09CVVMJCQkJMHhhMTgwCisjZGVmaW5lIF9HRU42X1JDX0NPTlRST0wJCTB4QTA5 MAorI2RlZmluZSBfR0VONl9SQ19TVEFURQkJCTB4QTA5NAorI2RlZmluZSBfR0VONl9SUE5TV1JF UQkJCQkoMHhBMDA4KQorI2RlZmluZSBfR0VONl9SQ19WSURFT19GUkVRCQkJKDB4QTAwQykKKyNk ZWZpbmUgX0dFTjZfUlBfRE9XTl9USU1FT1VUCQkJKDB4QTAxMCkKKyNkZWZpbmUgX0dFTjZfUlBf SU5URVJSVVBUX0xJTUlUUwkJKDB4QTAxNCkKKyNkZWZpbmUgX0dFTjZfUlBTVEFUMQkJCQkoMHhB MDFDKQorI2RlZmluZSBfR0VONl9SUF9DT05UUk9MCQkJCSgweEEwMjQpCisjZGVmaW5lIF9HRU42 X1JQX1VQX1RIUkVTSE9MRAkJCSgweEEwMkMpCisjZGVmaW5lIF9HRU42X1JQX0RPV05fVEhSRVNI T0xECQkJKDB4QTAzMCkKKyNkZWZpbmUgX0dFTjZfUlBfQ1VSX1VQX0VJCQkJKDB4QTA1MCkKKyNk ZWZpbmUgX0dFTjZfUlBfQ1VSX1VQCQkJCSgweEEwNTQpCisjZGVmaW5lIF9HRU42X1JQX1BSRVZf VVAJCQkJKDB4QTA1OCkKKyNkZWZpbmUgX0dFTjZfUlBfQ1VSX0RPV05fRUkJCQkoMHhBMDVDKQor I2RlZmluZSBfR0VONl9SUF9DVVJfRE9XTgkJCSgweEEwNjApCisjZGVmaW5lIF9HRU42X1JQX1BS RVZfRE9XTgkJCSgweEEwNjQpCisjZGVmaW5lIF9HRU42X1JQX1VQX0VJCQkJCSgweEEwNjgpCisj ZGVmaW5lIF9HRU42X1JQX0RPV05fRUkJCQkJKDB4QTA2QykKKyNkZWZpbmUgX0dFTjZfUlBfSURM RV9IWVNURVJTSVMJCQkoMHhBMDcwKQorI2RlZmluZSBfR0VONl9SQzFfV0FLRV9SQVRFX0xJTUlU CQkoMHhBMDk4KQorI2RlZmluZSBfR0VONl9SQzZfV0FLRV9SQVRFX0xJTUlUCQkoMHhBMDlDKQor I2RlZmluZSBfR0VONl9SQzZwcF9XQUtFX1JBVEVfTElNSVQJCSgweEEwQTApCisjZGVmaW5lIF9H RU42X1JDX0VWQUxVQVRJT05fSU5URVJWQUwJCSgweEEwQTgpCisjZGVmaW5lIF9HRU42X1JDX0lE TEVfSFlTVEVSU0lTCQkJKDB4QTBBQykKKyNkZWZpbmUgX0dFTjZfUkNfU0xFRVAJCQkJKDB4QTBC MCkKKyNkZWZpbmUgX0dFTjZfUkMxZV9USFJFU0hPTEQJCQkoMHhBMEI0KQorI2RlZmluZSBfR0VO Nl9SQzZfVEhSRVNIT0xECQkJKDB4QTBCOCkKKyNkZWZpbmUgX0dFTjZfUkM2cF9USFJFU0hPTEQJ CQkoMHhBMEJDKQorI2RlZmluZSBfR0VONl9SQzZwcF9USFJFU0hPTEQJCQkoMHhBMEMwKQorI2Rl ZmluZSBfR0VONl9QTUlOVFJNU0sJCQkJKDB4QTE2OCkKKyNkZWZpbmUgX0hTV19QV1JfV0VMTF9C SU9TCQkJKDB4NDU0MDApCisjZGVmaW5lIF9IU1dfUFdSX1dFTExfRFJJVkVSCQkJKDB4NDU0MDQp CisjZGVmaW5lIF9IU1dfUFdSX1dFTExfS1ZNUgkJCSgweDQ1NDA4KQorI2RlZmluZSBfSFNXX1BX Ul9XRUxMX0RFQlVHCQkJKDB4NDU0MEMpCisjZGVmaW5lIF9IU1dfUFdSX1dFTExfQ1RMNQkJCSgw eDQ1NDEwKQorI2RlZmluZSBfSFNXX1BXUl9XRUxMX0NUTDYJCQkoMHg0NTQxNCkKKyNkZWZpbmUg X0NQVV9WR0FDTlRSTAkoMHg0MTAwMCkKKyNkZWZpbmUgX1RJTEVDVEwJCQkJKDB4MTAxMDAwKQor I2RlZmluZSBfR0VONl9VQ0dDVEwxCQkJCSgweDk0MDApCisjZGVmaW5lIF9HRU42X1VDR0NUTDIJ CQkJKDB4OTQwNCkKKyNkZWZpbmUgX0dFTjZfUENPREVfTUFJTEJPWAkJCSgweDEzODEyNCkKKyNk ZWZpbmUgX0dFTjZfUENPREVfREFUQQkJCQkoMHgxMzgxMjgpCisjZGVmaW5lIF9HRU43X0VSUl9J TlQJKDB4NDQwNDApCisjZGVmaW5lIF9HRlhfRkxTSF9DTlRMX0dFTjYJKDB4MTAxMDA4KQorI2Rl ZmluZSBfRUNPU0tQRAkJKDB4MjFkMCkKKyNkZWZpbmUgX0dFTjZfQkxJVFRFUl9FQ09TS1BECSgw eDIyMWQwKQorI2RlZmluZSBfR0FDX0VDT19CSVRTCQkJKDB4MTQwOTApCisjZGVmaW5lIF9HRU42 X01CQ1RMCQkoMHgwOTA3YykKKyNkZWZpbmUgX0dBQl9DVEwJCQkJKDB4MjQwMDApCisjZGVmaW5l IF9GUEdBX0RCRwkJKDB4NDIzMDApCisjZGVmaW5lIF9CQ1NfU1dDVFJMICgweDIyMjAwKQorI2Rl ZmluZSBfSFNfSU5WT0NBVElPTl9DT1VOVCAgICAgICAgICAgICAoMHgyMzAwKQorI2RlZmluZSBf RFNfSU5WT0NBVElPTl9DT1VOVCAgICAgICAgICAgICAoMHgyMzA4KQorI2RlZmluZSBfSUFfVkVS VElDRVNfQ09VTlQgICAgICAgICAgICAgICAoMHgyMzEwKQorI2RlZmluZSBfSUFfUFJJTUlUSVZF U19DT1VOVCAgICAgICAgICAgICAoMHgyMzE4KQorI2RlZmluZSBfVlNfSU5WT0NBVElPTl9DT1VO VCAgICAgICAgICAgICAoMHgyMzIwKQorI2RlZmluZSBfR1NfSU5WT0NBVElPTl9DT1VOVCAgICAg ICAgICAgICAoMHgyMzI4KQorI2RlZmluZSBfR1NfUFJJTUlUSVZFU19DT1VOVCAgICAgICAgICAg ICAoMHgyMzMwKQorI2RlZmluZSBfQ0xfSU5WT0NBVElPTl9DT1VOVCAgICAgICAgICAgICAoMHgy MzM4KQorI2RlZmluZSBfQ0xfUFJJTUlUSVZFU19DT1VOVCAgICAgICAgICAgICAoMHgyMzQwKQor I2RlZmluZSBfUFNfSU5WT0NBVElPTl9DT1VOVCAgICAgICAgICAgICAoMHgyMzQ4KQorI2RlZmlu ZSBfUFNfREVQVEhfQ09VTlQgICAgICAgICAgICAgICAgICAoMHgyMzUwKQorCiAjZGVmaW5lIF9H RU44X0RFX1BPUlRfSU1SICgweDQ0NDQ0KQogI2RlZmluZSBfR0VOOF9ERV9QT1JUX0lFUiAoMHg0 NDQ0YykKICNkZWZpbmUgX0dFTjhfREVfUE9SVF9JSVIgKDB4NDQ0NDgpCkBAIC00OTEsMTEgKzY2 Niw3NSBAQCB1bmlvbiBfVFJBTlNfQ09ORklHCiAjZGVmaW5lIF9HRU44X1BDVV9JU1IgKDB4NDQ0 ZTApCiAjZGVmaW5lIF9HRU44X01BU1RFUl9JUlEJCQkoMHg0NDIwMCkKIAorI2RlZmluZSBfUklO R19IV1NUQU0oYmFzZSkJKChiYXNlKSsweDk4KQorI2RlZmluZSBfUklOR19UQUlMKGJhc2UpCQko KGJhc2UpKzB4MzApCisjZGVmaW5lIF9SSU5HX0hFQUQoYmFzZSkJCSgoYmFzZSkrMHgzNCkKKyNk ZWZpbmUgX1JJTkdfU1RBUlQoYmFzZSkJKChiYXNlKSsweDM4KQorI2RlZmluZSBfUklOR19DVEwo YmFzZSkJCSgoYmFzZSkrMHgzYykKKyNkZWZpbmUgX1JJTkdfQUNUSEQoYmFzZSkJKChiYXNlKSsw eDc0KQorI2RlZmluZSBfUklOR19NSV9NT0RFKGJhc2UpCSgoYmFzZSkrMHg5YykKKyNkZWZpbmUg X1JJTkdfSU5TVFBNKGJhc2UpCSgoYmFzZSkrMHhjMCkKKworI2RlZmluZSBfR0VONl9NQkNVTklU X1NOUENSCSgweDkwMGMpCisjZGVmaW5lIF9HRU43X01JU0NDUENUTAkJCQkoMHg5NDI0KQorI2Rl ZmluZSBfR0VOOF9QUklWQVRFX1BBVF9MTwkoMHg0MGUwKQorI2RlZmluZSBfR0VOOF9QUklWQVRF X1BBVF9ISQkoMHg0MGUwICsgNCkKKyNkZWZpbmUgX0dBTVRBUkJNT0RFCQkoMHgwNGEwOCkKKwog I2RlZmluZSBfU0RFSU1SICAoMHhjNDAwNCkKICNkZWZpbmUgX1NERUlFUiAgKDB4YzQwMGMpCiAj ZGVmaW5lIF9TREVJSVIgICgweGM0MDA4KQogI2RlZmluZSBfU0RFSVNSICAoMHhjNDAwMCkKIAor I2RlZmluZSBfUkVOREVSX0hXU19QR0FfR0VONwkoMHgwNDA4MCkKKyNkZWZpbmUgX0JTRF9IV1Nf UEdBX0dFTjcJKDB4MDQxODApCisjZGVmaW5lIF9CTFRfSFdTX1BHQV9HRU43CSgweDA0MjgwKQor I2RlZmluZSBfVkVCT1hfSFdTX1BHQV9HRU43CSgweDA0MzgwKQorI2RlZmluZSBfUklOR19NSV9N T0RFKGJhc2UpCSgoYmFzZSkrMHg5YykKKyNkZWZpbmUgX0dFTjdfR1RfTU9ERQkoMHg3MDA4KQor I2RlZmluZSBfQ0FDSEVfTU9ERV8wX0dFTjcJKDB4NzAwMCkgLyogSVZCKyAqLworI2RlZmluZSBf Q0FDSEVfTU9ERV8xCQkoMHg3MDA0KSAvKiBJVkIrICovCisjZGVmaW5lIF9HQU1fRUNPQ0hLCQkJ KDB4NDA5MCkKKyNkZWZpbmUgX0dFTjdfQ09NTU9OX1NMSUNFX0NISUNLRU4xCQkoMHg3MDEwKQor I2RlZmluZSBfQ09NTU9OX1NMSUNFX0NISUNLRU4yCQkJKDB4NzAxNCkKKyNkZWZpbmUgX1ZHQTAJ KDB4NjAwMCkKKyNkZWZpbmUgX1ZHQTEJKDB4NjAwNCkKKyNkZWZpbmUgX1ZHQV9QRAkoMHg2MDEw KQorI2RlZmluZSBfREVSUk1SCQkoMHg0NDA1MCkKKyNkZWZpbmUgX1dNMF9QSVBFQV9JTEsJCSgw eDQ1MTAwKQorI2RlZmluZSBfV00wX1BJUEVCX0lMSwkJKDB4NDUxMDQpCisjZGVmaW5lIF9XTTBf UElQRUNfSVZCCQkoMHg0NTIwMCkKKyNkZWZpbmUgX1dNMV9MUF9JTEsJCSgweDQ1MTA4KQorI2Rl ZmluZSBfV00yX0xQX0lMSwkJKDB4NDUxMGMpCisjZGVmaW5lIF9XTTNfTFBfSUxLCQkoMHg0NTEx MCkKKyNkZWZpbmUgX1dNMVNfTFBfSUxLCQkoMHg0NTEyMCkKKyNkZWZpbmUgX1dNMlNfTFBfSVZC CQkoMHg0NTEyNCkKKyNkZWZpbmUgX1dNM1NfTFBfSVZCCQkoMHg0NTEyOCkKKyNkZWZpbmUgX0JM Q19QV01fQ1BVX0NUTDIJKDB4NDgyNTApCisjZGVmaW5lIF9CTENfUFdNX0NQVV9DVEwJCSgweDQ4 MjU0KQorI2RlZmluZSBfQkxDX1BXTV9QQ0hfQ1RMMQkoMHhjODI1MCkKKyNkZWZpbmUgX0JMQ19Q V01fUENIX0NUTDIJKDB4YzgyNTQpCisjZGVmaW5lIF9QQ0hfR1BJT0EgICAgICAgICAgICAgICAo MHhjNTAxMCkKKyNkZWZpbmUgX1BDSF9BRFBBICAgICAgICAgICAgICAgICgweGUxMTAwKQorI2Rl ZmluZSBfXzNEX0NISUNLRU4zCQkoMHgyMDkwKQorI2RlZmluZSBfUENIX0xWRFMJKDB4ZTExODAp CisjZGVmaW5lIF9QQ0hfRFJFRl9DT05UUk9MICAgICAgICAoMHhDNjIwMCkKKyNkZWZpbmUgX1BD SF9SQVdDTEtfRlJFUSAgICAgICAgICgweGM2MjA0KQorI2RlZmluZSBfUENIX0RQTExfU0VMCQko MHhjNzAwMCkKKyNkZWZpbmUgX1BDSF9QT1JUX0hPVFBMVUcJCSgweGM0MDMwKQkvKiBTSE9UUExV R19DVEwgKi8KKyNkZWZpbmUgX0xDUExMX0NUTAkJCSgweDEzMDA0MCkKKyNkZWZpbmUgX0ZVU0Vf U1RSQVAJCQkoMHg0MjAxNCkKKyNkZWZpbmUgX0RJR0lUQUxfUE9SVF9IT1RQTFVHX0NOVFJMCSgw eDQ0MDMwKQorI2RlZmluZSBfRElTUF9BUkJfQ1RMCSgweDQ1MDAwKQorI2RlZmluZSBfRElTUF9B UkJfQ1RMMgkoMHg0NTAwNCkKKyNkZWZpbmUgX0lMS19ESVNQTEFZX0NISUNLRU4xCSgweDQyMDAw KQorI2RlZmluZSBfSUxLX0RJU1BMQVlfQ0hJQ0tFTjIJKDB4NDIwMDQpCisjZGVmaW5lIF9JTEtf RFNQQ0xLX0dBVEVfRAkJCSgweDQyMDIwKQorI2RlZmluZSBfU09VVEhfQ0hJQ0tFTjEJCSgweGMy MDAwKQorI2RlZmluZSBfU09VVEhfQ0hJQ0tFTjIJCSgweGMyMDA0KQorI2RlZmluZSBfU09VVEhf RFNQQ0xLX0dBVEVfRAkoMHhjMjAyMCkKKyNkZWZpbmUgX0lQU19DVEwJCSgweDQzNDA4KQorCiAj ZGVmaW5lIF9HRU44X0dUX0lTUih3aGljaCkgKDB4NDQzMDAgKyAoMHgxMCAqICh3aGljaCkpKQog I2RlZmluZSBfR0VOOF9HVF9JTVIod2hpY2gpICgweDQ0MzA0ICsgKDB4MTAgKiAod2hpY2gpKSkK ICNkZWZpbmUgX0dFTjhfR1RfSUlSKHdoaWNoKSAoMHg0NDMwOCArICgweDEwICogKHdoaWNoKSkp CkBAIC01MDYsNyArNzQ1LDE0MiBAQCB1bmlvbiBfVFJBTlNfQ09ORklHCiAjZGVmaW5lIF9HRU44 X0RFX1BJUEVfSUlSKHBpcGUpICgweDQ0NDA4ICsgKDB4MTAgKiAocGlwZSkpKQogI2RlZmluZSBf R0VOOF9ERV9QSVBFX0lFUihwaXBlKSAoMHg0NDQwYyArICgweDEwICogKHBpcGUpKSkKIAorLyog ZGlnaXRhbCBwb3J0IGhvdHBsdWcgKi8KKy8qIEdNQlVTMSBiaXRzIGRlZmluaXRpb25zICovCisK KyNkZWZpbmUgR01CVVMxX1RPVEFMX0JZVEVTX1NISUZUIDE2CisjZGVmaW5lIEdNQlVTMV9UT1RB TF9CWVRFU19NQVNLIDB4MWZmCisjZGVmaW5lIGdtYnVzMV90b3RhbF9ieXRlX2NvdW50KHYpICgo KHYpID4+IEdNQlVTMV9UT1RBTF9CWVRFU19TSElGVCkgJiBHTUJVUzFfVE9UQUxfQllURVNfTUFT SykKKyNkZWZpbmUgZ21idXMxX3NsYXZlX2FkZHIodikgKCgodikgJiAweGZmKSA+PiAxKQorI2Rl ZmluZSBnbWJ1czFfc2xhdmVfaW5kZXgodikgKCgodikgPj4gOCkgJiAweGZmKQorI2RlZmluZSBn bWJ1czFfYnVzX2N5Y2xlKHYpICgoKHYpID4+IDI1KSAmIDB4NykKKworLyogR01CVVMwIGJpdHMg ZGVmaW5pdGlvbnMgKi8KKyNkZWZpbmUgX0dNQlVTX1BJTl9TRUxfTUFTSwkoMHg3KQorCisjZGVm aW5lIF9SRUdfUkNfUFdSQ1RYX01BWENOVAkJMHgyMDU0CisjZGVmaW5lIF9SRUdfVkZTS1BECQkJ MHgyNDcwCisjZGVmaW5lIF9SRUdfMkRfQ0dfRElTCQkJMHg2MjAwCisjZGVmaW5lIF9SRUdfM0Rf Q0dfRElTCQkJMHg2MjA0CisjZGVmaW5lIF9SRUdfM0RfQ0dfRElTMgkJCTB4NjIwOAorI2RlZmlu ZSBfUkVHX1NVUEVSX1FVRVVFX0NPTkZJRwkJMHg5MDJjCisKKy8qIGludGVycnVwdCByZWxhdGVk IGRlZmluaXRpb25zICovCisjZGVmaW5lCV9SRUdTSElGVF9NQVNURVJfSU5URVJSVVBUCTMxCisj ZGVmaW5lCV9SRUdTSElGVF9QQ0gJMjEKKyNkZWZpbmUJX1JFR0JJVF9QQ0gJKDEgPDwgMjEpCisv KiBHRU43ICovCisjZGVmaW5lCV9SRUdTSElGVF9QQ0hfR0VONwkyOAorI2RlZmluZQlfUkVHQklU X1BDSF9HRU43CSgxIDw8IDI4KQorCisjZGVmaW5lCV9SRUdCSVRfRFBfQV9QVUxTRV9EVVJBVElP TgkoMyA8PCAyKQorCisjZGVmaW5lCV9SRUdCSVRfQ1JUX0hPVFBMVUcJKDEgPDwgMTkpCisjZGVm aW5lCV9SRUdCSVRfRFBfQl9IT1RQTFVHCSgxIDw8IDIxKQorI2RlZmluZQlfUkVHQklUX0RQX0Nf SE9UUExVRwkoMSA8PCAyMikKKyNkZWZpbmUJX1JFR0JJVF9EUF9EX0hPVFBMVUcJKDEgPDwgMjMp CisKKyNkZWZpbmUgICAgICAgIF9SRUdCSVRfRFBfQl9TVEFUVVMJCQkoMyA8PCAwKQorI2RlZmlu ZSAgICAgICAgX1JFR0JJVF9EUF9CX1BVTFNFX0RVUkFUSU9OCQkoMyA8PCAyKQorI2RlZmluZSAg ICAgICAgX1JFR0JJVF9EUF9CX0VOQUJMRQkJCSgxIDw8IDQpCisjZGVmaW5lICAgICAgICBfUkVH QklUX0RQX0NfU1RBVFVTCQkJKDMgPDwgOCkKKyNkZWZpbmUgICAgICAgIF9SRUdCSVRfRFBfQ19Q VUxTRV9EVVJBVElPTgkJKDMgPDwgMTApCisjZGVmaW5lICAgICAgICBfUkVHQklUX0RQX0NfRU5B QkxFCQkJKDEgPDwgMTIpCisjZGVmaW5lICAgICAgICBfUkVHQklUX0RQX0RfU1RBVFVTCQkJKDMg PDwgMTYpCisjZGVmaW5lICAgICAgICBfUkVHQklUX0RQX0RfUFVMU0VfRFVSQVRJT04JCSgzIDw8 IDE4KQorI2RlZmluZSAgICAgICAgX1JFR0JJVF9EUF9EX0VOQUJMRQkJCSgxIDw8IDIwKQorCisj ZGVmaW5lIF9SRUdfUkNTX1dBVENIRE9HX0NUTAkweDIxNzgKKyNkZWZpbmUgX1JFR19SQ1NfV0FU Q0hET0dfVEhSU0gJMHgyMTdDCisjZGVmaW5lIF9SRUdfUkNTX1dBVENIRE9HX0NUUgkweDIxOTAK KyNkZWZpbmUgX1JFR19WQ1NfV0FUQ0hET0dfQ1RSCTB4MTIxNzgKKyNkZWZpbmUgX1JFR19WQ1Nf V0FUQ0hET0dfVEhSU0gJMHgxMjE3QworI2RlZmluZSBfUkVHX0JDU19FSVIJMHgyMjBCMAorI2Rl ZmluZSBfUkVHX0JDU19FTVIJMHgyMjBCNAorI2RlZmluZSBfUkVHX0JDU19FU1IJMHgyMjBCOAor I2RlZmluZSBfUkVHX1ZDU19FSVIJMHgxMjBCMAorI2RlZmluZSBfUkVHX1ZDU19FTVIJMHgxMjBC NAorI2RlZmluZSBfUkVHX1ZDU19FU1IJMHgxMjBCOAorI2RlZmluZSBfUkVHX1ZFQ1NfRUlSCTB4 MUEwQjAKKyNkZWZpbmUgX1JFR19WRUNTX0VNUgkweDFBMEI0CisjZGVmaW5lIF9SRUdfVkVDU19F U1IJMHgxQTBCOAorCisvKiBibGFja2xpZ2h0IFBXTSBjb250cm9sICovCisjZGVmaW5lIF9SRUdf SElTVE9HUkFNX1RIUlNICTB4NDgyNjgKKyNkZWZpbmUgICAgICAgIF9SRUdCSVRfSElTVE9HUkFN X0lSUV9FTkFCTEUJKDEgPDwgMzEpCisjZGVmaW5lICAgICAgICBfUkVHQklUX0hJU1RPR1JBTV9J UlFfU1RBVFVTCSgxIDw8IDMwKQorCisvKgorICogQ29uZmlndXJhdGlvbiByZWdpc3RlciBkZWZp bml0aW9uIGZvciBCREY6IDA6MDowLgorICovCisjZGVmaW5lIF9SRUdfR01DSF9DT05UUkwJCTB4 NTAKKyNkZWZpbmUgICAgX1JFR0JJVF9TTkJfR01DSF9HTVNfU0hJRlQgICAzIC8qIEdyYXBoaWNz IE1vZGUgU2VsZWN0ICovCisjZGVmaW5lICAgIF9SRUdCSVRfU05CX0dNQ0hfR01TX01BU0sgICAg MHgxZgorI2RlZmluZSAgICBfUkVHQklUX0JEV19HTUNIX0dNU19TSElGVCAgIDgKKyNkZWZpbmUg ICAgX1JFR0JJVF9CRFdfR01DSF9HTVNfTUFTSyAgICAweGZmCisKKy8qIEhTVyAqLworI2RlZmlu ZSAgX1JFR0JJVF9TUExMX0NUTF9FTkFCTEUJKDEgPDwgMzEpCisKKyNkZWZpbmUgX1JFR19QT1JU X0NMS19TRUxfRERJQwkweDQ2MTA4CisjZGVmaW5lIF9SRUdfUE9SVF9DTEtfU0VMX0RESUQJMHg0 NjEwQworI2RlZmluZSBfUkVHX1BPUlRfQ0xLX1NFTF9ERElFCTB4NDYxMTAKKworI2RlZmluZSBf UkVHX1RSQU5TX0NMS19TRUxfQwkweDQ2MTQ4CisjZGVmaW5lIFNCSV9SRVNQT05TRV9NQVNLCQkw eDMKKyNkZWZpbmUgU0JJX1JFU1BPTlNFX1NISUZUCQkweDEKKyNkZWZpbmUgU0JJX1NUQVRfTUFT SwkJCTB4MQorI2RlZmluZSBTQklfU1RBVF9TSElGVAkJCTB4MAorI2RlZmluZSBTQklfT1BDT0RF X1NISUZUCQk4CisjZGVmaW5lIFNCSV9PUENPREVfTUFTSwkJKDB4ZmYgPDwgU0JJX09QQ09ERV9T SElGVCkKKyNkZWZpbmUgU0JJX0NNRF9JT1JECQkJMgorI2RlZmluZSBTQklfQ01EX0lPV1IJCQkz CisjZGVmaW5lIFNCSV9DTURfQ1JSRAkJCTYKKyNkZWZpbmUgU0JJX0NNRF9DUldSCQkJNworI2Rl ZmluZSBTQklfQUREUl9PRkZTRVRfU0hJRlQJCTE2CisjZGVmaW5lIFNCSV9BRERSX09GRlNFVF9N QVNLCQkoMHhmZmZmIDw8IFNCSV9BRERSX09GRlNFVF9TSElGVCkKKwogI2RlZmluZSBfR1ZUX1RS QU5TX0RESV9GVU5DX0NUTCh0cmFuKSAgIF9UUkFOUyh0cmFuLCBfVFJBTlNfRERJX0ZVTkNfQ1RM X0EsIFwKIAkJX1RSQU5TX0RESV9GVU5DX0NUTF9CKQogCisvKiBUaG9zZSBiaXRzIGFyZSBpZ25v cmVkIGJ5IHBpcGUgRURQIHNpbmNlIGl0IGNhbiBvbmx5IGNvbm5lY3QgdG8gRERJIEEgKi8KKyNk ZWZpbmUgIF9UUkFOU19ERElfTU9ERV9TRUxFQ1RfSElGVAkJMjQKKyNkZWZpbmUgIF9UUkFOU19E RElfRURQX0lOUFVUX1NISUZUCQkxMgorCisjZGVmaW5lIF9SRUdfR0VON19TUV9DSElDS0VOX01C Q1VOSVRfQ09ORklHCQkweDkwMzAKKworI2RlZmluZSBfUkVHX1BJUEVfV01fTElORVRJTUVfQwkJ CTB4NDUyNzgKKworI2RlZmluZSBfUkVHX0hTV19WSURFT19ESVBfQ1RMX0MJCTB4NjIyMDAKKyNk ZWZpbmUgX1JFR19IU1dfVklERU9fRElQX0NUTF9FRFAJCTB4NkYyMDAKKworLyogR0VOOCBpbnRl cnJ1cHQgcmVnaXN0ZXJzIGRlZmluYXRpb25zICovCisjZGVmaW5lIF9SRUdfR1RfSVNSKHdoaWNo KSAoMHg0NDMwMCArICgweDEwICogKHdoaWNoKSkpCisjZGVmaW5lIF9SRUdfR1RfSU1SKHdoaWNo KSAoMHg0NDMwNCArICgweDEwICogKHdoaWNoKSkpCisjZGVmaW5lIF9SRUdfR1RfSUlSKHdoaWNo KSAoMHg0NDMwOCArICgweDEwICogKHdoaWNoKSkpCisjZGVmaW5lIF9SRUdfR1RfSUVSKHdoaWNo KSAoMHg0NDMwYyArICgweDEwICogKHdoaWNoKSkpCisKKyNkZWZpbmUgX1JFR19ERV9QSVBFX0lT UihwaXBlKSAoMHg0NDQwMCArICgweDEwICogKHBpcGUpKSkKKyNkZWZpbmUgX1JFR19ERV9QSVBF X0lNUihwaXBlKSAoMHg0NDQwNCArICgweDEwICogKHBpcGUpKSkKKyNkZWZpbmUgX1JFR19ERV9Q SVBFX0lJUihwaXBlKSAoMHg0NDQwOCArICgweDEwICogKHBpcGUpKSkKKyNkZWZpbmUgX1JFR19E RV9QSVBFX0lFUihwaXBlKSAoMHg0NDQwYyArICgweDEwICogKHBpcGUpKSkKKworI2RlZmluZSBf UkVHX1JJTkdfUERQX1VEVyhiYXNlLCBuKSAgICAgIChiYXNlICsgMHgyNzAgKyAoKG4pICogOCAr IDQpKQorI2RlZmluZSBfUkVHX1JJTkdfUERQX0xEVyhiYXNlLCBuKSAgICAgIChiYXNlICsgMHgy NzAgKyAobikgKiA4KQorCisjZGVmaW5lIF9SRUdfUkNTX1BEUF9VRFcobikJX1JFR19SSU5HX1BE UF9VRFcoMHgyMDAwLCBuKQorI2RlZmluZSBfUkVHX1JDU19QRFBfTERXKG4pCV9SRUdfUklOR19Q RFBfTERXKDB4MjAwMCwgbikKKworI2RlZmluZSBfUkVHX1ZDU19QRFBfVURXKG4pCV9SRUdfUklO R19QRFBfVURXKDB4MTIwMDAsIG4pCisjZGVmaW5lIF9SRUdfVkNTX1BEUF9MRFcobikJX1JFR19S SU5HX1BEUF9MRFcoMHgxMjAwMCwgbikKKworI2RlZmluZSBfUkVHX1ZDUzJfUERQX1VEVyhuKQlf UkVHX1JJTkdfUERQX1VEVygweDFjMDAwLCBuKQorI2RlZmluZSBfUkVHX1ZDUzJfUERQX0xEVyhu KQlfUkVHX1JJTkdfUERQX0xEVygweDFjMDAwLCBuKQorCisjZGVmaW5lIF9SRUdfVkVDU19QRFBf VURXKG4pCV9SRUdfUklOR19QRFBfVURXKDB4MWEwMDAsIG4pCisjZGVmaW5lIF9SRUdfVkVDU19Q RFBfTERXKG4pCV9SRUdfUklOR19QRFBfTERXKDB4MWEwMDAsIG4pCisKKyNkZWZpbmUgX1JFR19C Q1NfUERQX1VEVyhuKQlfUkVHX1JJTkdfUERQX1VEVygweDIyMDAwLCBuKQorI2RlZmluZSBfUkVH X0JDU19QRFBfTERXKG4pCV9SRUdfUklOR19QRFBfTERXKDB4MjIwMDAsIG4pCisKICNlbmRpZgot LSAKMS45LjEKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CkludGVsLWdmeCBtYWlsaW5nIGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpo dHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==