From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sean Paul Subject: Re: [PATCH 01/11] drm/msm/dpu: Remove dpu_dbg Date: Tue, 6 Nov 2018 09:22:54 -0500 Message-ID: <20181106142254.GL154160@art_vandelay> References: <20181105233103.7657-1-jcrouse@codeaurora.org> <20181105233103.7657-2-jcrouse@codeaurora.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20181105233103.7657-2-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Jordan Crouse Cc: sam-uyr5N9Q2VtJg9hUCZPvPmw@public.gmane.org, linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, bzwang-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, seanpaul-F7+t8E8rja9g9hUCZPvPmw@public.gmane.org, abhinavk-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org, freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: linux-arm-msm@vger.kernel.org T24gTW9uLCBOb3YgMDUsIDIwMTggYXQgMDQ6MzA6NTNQTSAtMDcwMCwgSm9yZGFuIENyb3VzZSB3 cm90ZToKPiBUaGUgZnVuY3Rpb25zIGluIGRwdV9kYmcuYyBhcmVuJ3QgdXNlZC4gVGhlIHR3byBt YWluIGR1bXAgZnVuY3Rpb25zCj4gZmFpbCBhZnRlciBhIGxvb2t1cCBmcm9tIGRwdV9kYmdfYmFz ZS5yZWdfYmFzZV9saXN0IHdoaWNoIHR1cm5zIG91dAo+IHRvIG5ldmVyIGJlIHBvcHVsYXRlZCBh bmQgb25jZSB0aG9zZSBhcmUgcmVtb3ZlZCB0aGUgcmVzdCBvZiB0aGUKPiBmaWxlIGRvZXNuJ3Qg bWFrZSBhbnkgc2Vuc2UuCj4gCj4gdjI6IE1vdmVkIHNvbWUgdW5yZWxhdGVkIGNoYW5nZXMgdG8g YW5vdGhlciBwYXRjaAo+IAo+IFNpZ25lZC1vZmYtYnk6IEpvcmRhbiBDcm91c2UgPGpjcm91c2VA Y29kZWF1cm9yYS5vcmc+CgpSZXZpZXdlZC1ieTogU2VhbiBQYXVsIDxzZWFuQHBvb3JseS5ydW4+ Cgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL01ha2VmaWxlICAgICAgICAgICAgICAgICAg fCAgICAzICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9kYmcuYyAgICAg ICB8IDIzOTMgLS0tLS0tLS0tLS0tLS0tLS0KPiAgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2Rw dTEvZHB1X2RiZy5oICAgICAgIHwgIDEwMyAtCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9k cHUxL2RwdV9lbmNvZGVyLmMgICB8ICAgIDQgKy0KPiAgLi4uL2RybS9tc20vZGlzcC9kcHUxL2Rw dV9lbmNvZGVyX3BoeXNfY21kLmMgIHwgICAgMSAtCj4gIC4uLi9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfZW5jb2Rlcl9waHlzX3ZpZC5jICB8ICAgIDEgLQo+ICBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rp c3AvZHB1MS9kcHVfaHdfY3RsLmMgICAgfCAgICAxIC0KPiAgZHJpdmVycy9ncHUvZHJtL21zbS9k aXNwL2RwdTEvZHB1X2h3X2ludGYuYyAgIHwgICAgMSAtCj4gIGRyaXZlcnMvZ3B1L2RybS9tc20v ZGlzcC9kcHUxL2RwdV9od19sbS5jICAgICB8ICAgIDEgLQo+ICAuLi4vZ3B1L2RybS9tc20vZGlz cC9kcHUxL2RwdV9od19waW5ncG9uZy5jICAgfCAgICAxIC0KPiAgZHJpdmVycy9ncHUvZHJtL21z bS9kaXNwL2RwdTEvZHB1X2h3X3NzcHAuYyAgIHwgICAgMSAtCj4gIGRyaXZlcnMvZ3B1L2RybS9t c20vZGlzcC9kcHUxL2RwdV9od190b3AuYyAgICB8ICAgIDMgLQo+ICBkcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfaHdfdmJpZi5jICAgfCAgICAxIC0KPiAgZHJpdmVycy9ncHUvZHJt L21zbS9kaXNwL2RwdTEvZHB1X2ttcy5jICAgICAgIHwgICAyMCArLQo+ICBkcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmggICAgICAgfCAgICAxIC0KPiAgMTUgZmlsZXMgY2hh bmdlZCwgNCBpbnNlcnRpb25zKCspLCAyNTMxIGRlbGV0aW9ucygtKQo+ICBkZWxldGUgbW9kZSAx MDA2NDQgZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2RiZy5jCj4gIGRlbGV0ZSBt b2RlIDEwMDY0NCBkcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZGJnLmgKPiAKPiBk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9NYWtlZmlsZSBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vTWFrZWZpbGUKPiBpbmRleCAxOWFiNTIxZDRjM2EuLmUwNjdkZDEzNDFiMSAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL01ha2VmaWxlCj4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL21zbS9NYWtlZmlsZQo+IEBAIC05Miw4ICs5Miw3IEBAIG1zbS15IDo9IFwKPiAgCW1zbV9y aW5nYnVmZmVyLm8gXAo+ICAJbXNtX3N1Ym1pdHF1ZXVlLm8KPiAgCj4gLW1zbS0kKENPTkZJR19E RUJVR19GUykgKz0gYWRyZW5vL2E1eHhfZGVidWdmcy5vIFwKPiAtCQkJICBkaXNwL2RwdTEvZHB1 X2RiZy5vCj4gK21zbS0kKENPTkZJR19ERUJVR19GUykgKz0gYWRyZW5vL2E1eHhfZGVidWdmcy5v Cj4gIAo+ICBtc20tJChDT05GSUdfRFJNX0ZCREVWX0VNVUxBVElPTikgKz0gbXNtX2ZiZGV2Lm8K PiAgbXNtLSQoQ09ORklHX0NPTU1PTl9DTEspICs9IGRpc3AvbWRwNC9tZHA0X2x2ZHNfcGxsLm8K PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2RiZy5jIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2RiZy5jCj4gZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0Cj4gaW5kZXggYTg1MDc4MTIzMTE5Li4wMDAwMDAwMDAwMDAKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZGJnLmMKPiArKysgL2Rldi9udWxsCj4gQEAg LTEsMjM5MyArMCwwIEBACj4gLS8qIENvcHlyaWdodCAoYykgMjAwOS0yMDE4LCBUaGUgTGludXgg Rm91bmRhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KPiAtICoKPiAtICogVGhpcyBwcm9ncmFt IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkK PiAtICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5z ZSB2ZXJzaW9uIDIgYW5kCj4gLSAqIG9ubHkgdmVyc2lvbiAyIGFzIHB1Ymxpc2hlZCBieSB0aGUg RnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLgo+IC0gKgo+IC0gKiBUaGlzIHByb2dyYW0gaXMgZGlz dHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwKPiAtICogYnV0IFdJ VEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK PiAtICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NF LiAgU2VlIHRoZQo+IC0gKiBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRh aWxzLgo+IC0gKi8KPiAtCj4gLSNkZWZpbmUgcHJfZm10KGZtdCkJIltkcm06JXM6JWRdICIgZm10 LCBfX2Z1bmNfXywgX19MSU5FX18KPiAtCj4gLSNpbmNsdWRlIDxsaW51eC9kZWxheS5oPgo+IC0j aW5jbHVkZSA8bGludXgvc3BpbmxvY2suaD4KPiAtI2luY2x1ZGUgPGxpbnV4L2t0aW1lLmg+Cj4g LSNpbmNsdWRlIDxsaW51eC9kZWJ1Z2ZzLmg+Cj4gLSNpbmNsdWRlIDxsaW51eC91YWNjZXNzLmg+ Cj4gLSNpbmNsdWRlIDxsaW51eC9kbWEtYnVmLmg+Cj4gLSNpbmNsdWRlIDxsaW51eC9zbGFiLmg+ Cj4gLSNpbmNsdWRlIDxsaW51eC9saXN0X3NvcnQuaD4KPiAtI2luY2x1ZGUgPGxpbnV4L3BtX3J1 bnRpbWUuaD4KPiAtCj4gLSNpbmNsdWRlICJkcHVfZGJnLmgiCj4gLSNpbmNsdWRlICJkaXNwL2Rw dTEvZHB1X2h3X2NhdGFsb2cuaCIKPiAtCj4gLQo+IC0jZGVmaW5lIERFRkFVTFRfREJHQlVTX0RQ VQlEUFVfREJHX0RVTVBfSU5fTUVNCj4gLSNkZWZpbmUgREVGQVVMVF9EQkdCVVNfVkJJRlJUCURQ VV9EQkdfRFVNUF9JTl9NRU0KPiAtI2RlZmluZSBSRUdfQkFTRV9OQU1FX0xFTgk4MAo+IC0KPiAt I2RlZmluZSBEQkdCVVNfRkxBR1NfRFNQUAlCSVQoMCkKPiAtI2RlZmluZSBEQkdCVVNfRFNQUF9T VEFUVVMJMHgzNEMKPiAtCj4gLSNkZWZpbmUgREJHQlVTX05BTUVfRFBVCQkiZHB1Igo+IC0jZGVm aW5lIERCR0JVU19OQU1FX1ZCSUZfUlQJInZiaWZfcnQiCj4gLQo+IC0vKiBvZmZzZXRzIGZyb20g ZHB1IHRvcCBhZGRyZXNzIGZvciB0aGUgZGVidWcgYnVzZXMgKi8KPiAtI2RlZmluZSBEQkdCVVNf U1NQUDAJMHgxODgKPiAtI2RlZmluZSBEQkdCVVNfQVhJX0lOVEYJMHgxOTQKPiAtI2RlZmluZSBE QkdCVVNfU1NQUDEJMHgyOTgKPiAtI2RlZmluZSBEQkdCVVNfRFNQUAkweDM0OAo+IC0jZGVmaW5l IERCR0JVU19QRVJJUEgJMHg0MTgKPiAtCj4gLSNkZWZpbmUgVEVTVF9NQVNLKGlkLCB0cCkJKChp ZCA8PCA0KSB8ICh0cCA8PCAxKSB8IEJJVCgwKSkKPiAtCj4gLS8qIGZvbGxvd2luZyBvZmZzZXRz IGFyZSB3aXRoIHJlc3BlY3QgdG8gTURQIFZCSUYgYmFzZSBmb3IgREJHIEJVUyBhY2Nlc3MgKi8K PiAtI2RlZmluZSBNTVNTX1ZCSUZfQ0xLT04JCQkweDQKPiAtI2RlZmluZSBNTVNTX1ZCSUZfVEVT VF9CVVNfT1VUX0NUUkwJMHgyMTAKPiAtI2RlZmluZSBNTVNTX1ZCSUZfVEVTVF9CVVNfT1VUCQkw eDIzMAo+IC0KPiAtLyogVmJpZiBlcnJvciBpbmZvICovCj4gLSNkZWZpbmUgTU1TU19WQklGX1BO RF9FUlIJCTB4MTkwCj4gLSNkZWZpbmUgTU1TU19WQklGX1NSQ19FUlIJCTB4MTk0Cj4gLSNkZWZp bmUgTU1TU19WQklGX1hJTl9IQUxUX0NUUkwxCTB4MjA0Cj4gLSNkZWZpbmUgTU1TU19WQklGX0VS Ul9JTkZPCQkwWDFhMAo+IC0jZGVmaW5lIE1NU1NfVkJJRl9FUlJfSU5GT18xCQkweDFhNAo+IC0j ZGVmaW5lIE1NU1NfVkJJRl9DTElFTlRfTlVNCQkxNAo+IC0KPiAtLyoqCj4gLSAqIHN0cnVjdCBk cHVfZGJnX3JlZ19iYXNlIC0gcmVnaXN0ZXIgcmVnaW9uIGJhc2UuCj4gLSAqCW1heSBzdWItcmFu Z2VzOiBzdWItcmFuZ2VzIGFyZSB1c2VkIGZvciBkdW1waW5nCj4gLSAqCW9yIG1heSBub3QgaGF2 ZSBzdWItcmFuZ2VzOiBkdW1waW5nIGlzIGJhc2UgLT4gbWF4X29mZnNldAo+IC0gKiBAcmVnX2Jh c2VfaGVhZDogaGVhZCBvZiB0aGlzIG5vZGUKPiAtICogQG5hbWU6IHJlZ2lzdGVyIGJhc2UgbmFt ZQo+IC0gKiBAYmFzZTogYmFzZSBwb2ludGVyCj4gLSAqIEBvZmY6IGNhY2hlZCBvZmZzZXQgb2Yg cmVnaW9uIGZvciBtYW51YWwgcmVnaXN0ZXIgZHVtcGluZwo+IC0gKiBAY250OiBjYWNoZWQgcmFu Z2Ugb2YgcmVnaW9uIGZvciBtYW51YWwgcmVnaXN0ZXIgZHVtcGluZwo+IC0gKiBAbWF4X29mZnNl dDogbGVuZ3RoIG9mIHJlZ2lvbgo+IC0gKiBAYnVmOiBidWZmZXIgdXNlZCBmb3IgbWFudWFsIHJl Z2lzdGVyIGR1bXBpbmcKPiAtICogQGJ1Zl9sZW46ICBidWZmZXIgbGVuZ3RoIHVzZWQgZm9yIG1h bnVhbCByZWdpc3RlciBkdW1waW5nCj4gLSAqIEBjYjogY2FsbGJhY2sgZm9yIGV4dGVybmFsIGR1 bXAgZnVuY3Rpb24sIG51bGwgaWYgbm90IGRlZmluZWQKPiAtICogQGNiX3B0cjogcHJpdmF0ZSBw b2ludGVyIHRvIGNhbGxiYWNrIGZ1bmN0aW9uCj4gLSAqLwo+IC1zdHJ1Y3QgZHB1X2RiZ19yZWdf YmFzZSB7Cj4gLQlzdHJ1Y3QgbGlzdF9oZWFkIHJlZ19iYXNlX2hlYWQ7Cj4gLQljaGFyIG5hbWVb UkVHX0JBU0VfTkFNRV9MRU5dOwo+IC0Jdm9pZCBfX2lvbWVtICpiYXNlOwo+IC0Jc2l6ZV90IG9m ZjsKPiAtCXNpemVfdCBjbnQ7Cj4gLQlzaXplX3QgbWF4X29mZnNldDsKPiAtCWNoYXIgKmJ1ZjsK PiAtCXNpemVfdCBidWZfbGVuOwo+IC0Jdm9pZCAoKmNiKSh2b2lkICpwdHIpOwo+IC0Jdm9pZCAq Y2JfcHRyOwo+IC19Owo+IC0KPiAtc3RydWN0IGRwdV9kZWJ1Z19idXNfZW50cnkgewo+IC0JdTMy IHdyX2FkZHI7Cj4gLQl1MzIgYmxvY2tfaWQ7Cj4gLQl1MzIgdGVzdF9pZDsKPiAtCXZvaWQgKCph bmFseXplcikodm9pZCBfX2lvbWVtICptZW1fYmFzZSwKPiAtCQkJCXN0cnVjdCBkcHVfZGVidWdf YnVzX2VudHJ5ICplbnRyeSwgdTMyIHZhbCk7Cj4gLX07Cj4gLQo+IC1zdHJ1Y3QgdmJpZl9kZWJ1 Z19idXNfZW50cnkgewo+IC0JdTMyIGRpc2FibGVfYnVzX2FkZHI7Cj4gLQl1MzIgYmxvY2tfYnVz X2FkZHI7Cj4gLQl1MzIgYml0X29mZnNldDsKPiAtCXUzMiBibG9ja19jbnQ7Cj4gLQl1MzIgdGVz dF9wbnRfc3RhcnQ7Cj4gLQl1MzIgdGVzdF9wbnRfY250Owo+IC19Owo+IC0KPiAtc3RydWN0IGRw dV9kYmdfZGVidWdfYnVzX2NvbW1vbiB7Cj4gLQljaGFyICpuYW1lOwo+IC0JdTMyIGVuYWJsZV9t YXNrOwo+IC0JYm9vbCBpbmNsdWRlX2luX2RlZmVycmVkX3dvcms7Cj4gLQl1MzIgZmxhZ3M7Cj4g LQl1MzIgZW50cmllc19zaXplOwo+IC0JdTMyICpkdW1wZWRfY29udGVudDsKPiAtfTsKPiAtCj4g LXN0cnVjdCBkcHVfZGJnX2RwdV9kZWJ1Z19idXMgewo+IC0Jc3RydWN0IGRwdV9kYmdfZGVidWdf YnVzX2NvbW1vbiBjbW47Cj4gLQlzdHJ1Y3QgZHB1X2RlYnVnX2J1c19lbnRyeSAqZW50cmllczsK PiAtCXUzMiB0b3BfYmxrX29mZjsKPiAtfTsKPiAtCj4gLXN0cnVjdCBkcHVfZGJnX3ZiaWZfZGVi dWdfYnVzIHsKPiAtCXN0cnVjdCBkcHVfZGJnX2RlYnVnX2J1c19jb21tb24gY21uOwo+IC0Jc3Ry dWN0IHZiaWZfZGVidWdfYnVzX2VudHJ5ICplbnRyaWVzOwo+IC19Owo+IC0KPiAtLyoqCj4gLSAq IHN0cnVjdCBkcHVfZGJnX2Jhc2UgLSBnbG9iYWwgZHB1IGRlYnVnIGJhc2Ugc3RydWN0dXJlCj4g LSAqIEByZWdfYmFzZV9saXN0OiBsaXN0IG9mIHJlZ2lzdGVyIGR1bXBpbmcgcmVnaW9ucwo+IC0g KiBAZGV2OiBkZXZpY2UgcG9pbnRlcgo+IC0gKiBAZHVtcF93b3JrOiB3b3JrIHN0cnVjdCBmb3Ig ZGVmZXJyaW5nIHJlZ2lzdGVyIGR1bXAgd29yayB0byBzZXBhcmF0ZSB0aHJlYWQKPiAtICogQGRi Z2J1c19kcHU6IGRlYnVnIGJ1cyBzdHJ1Y3R1cmUgZm9yIHRoZSBkcHUKPiAtICogQGRiZ2J1c192 YmlmX3J0OiBkZWJ1ZyBidXMgc3RydWN0dXJlIGZvciB0aGUgcmVhbHRpbWUgdmJpZgo+IC0gKi8K PiAtc3RhdGljIHN0cnVjdCBkcHVfZGJnX2Jhc2Ugewo+IC0Jc3RydWN0IGxpc3RfaGVhZCByZWdf YmFzZV9saXN0Owo+IC0Jc3RydWN0IGRldmljZSAqZGV2Owo+IC0KPiAtCXN0cnVjdCB3b3JrX3N0 cnVjdCBkdW1wX3dvcms7Cj4gLQo+IC0Jc3RydWN0IGRwdV9kYmdfZHB1X2RlYnVnX2J1cyBkYmdi dXNfZHB1Owo+IC0Jc3RydWN0IGRwdV9kYmdfdmJpZl9kZWJ1Z19idXMgZGJnYnVzX3ZiaWZfcnQ7 Cj4gLX0gZHB1X2RiZ19iYXNlOwo+IC0KPiAtc3RhdGljIHZvaWQgX2RwdV9kZWJ1Z19idXNfeGJh cl9kdW1wKHZvaWQgX19pb21lbSAqbWVtX2Jhc2UsCj4gLQkJc3RydWN0IGRwdV9kZWJ1Z19idXNf ZW50cnkgKmVudHJ5LCB1MzIgdmFsKQo+IC17Cj4gLQlEUk1fREVWX0VSUk9SKGRwdV9kYmdfYmFz ZS5kZXYsICJ4YmFyIDB4JXggJWQgJWQgMHgleFxuIiwKPiAtCQkJZW50cnktPndyX2FkZHIsIGVu dHJ5LT5ibG9ja19pZCwgZW50cnktPnRlc3RfaWQsIHZhbCk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2 b2lkIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAodm9pZCBfX2lvbWVtICptZW1fYmFzZSwKPiAtCQlz dHJ1Y3QgZHB1X2RlYnVnX2J1c19lbnRyeSAqZW50cnksIHUzMiB2YWwpCj4gLXsKPiAtCWlmICgh KHZhbCAmIDB4RkZGMDAwKSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JRFJNX0RFVl9FUlJPUihkcHVf ZGJnX2Jhc2UuZGV2LCAibG0gMHgleCAlZCAlZCAweCV4XG4iLAo+IC0JCQllbnRyeS0+d3JfYWRk ciwgZW50cnktPmJsb2NrX2lkLCBlbnRyeS0+dGVzdF9pZCwgdmFsKTsKPiAtfQo+IC0KPiAtc3Rh dGljIHZvaWQgX2RwdV9kZWJ1Z19idXNfcHBiMF9kdW1wKHZvaWQgX19pb21lbSAqbWVtX2Jhc2Us Cj4gLQkJc3RydWN0IGRwdV9kZWJ1Z19idXNfZW50cnkgKmVudHJ5LCB1MzIgdmFsKQo+IC17Cj4g LQlpZiAoISh2YWwgJiBCSVQoMTUpKSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JRFJNX0RFVl9FUlJP UihkcHVfZGJnX2Jhc2UuZGV2LCAicHBiMCAweCV4ICVkICVkIDB4JXhcbiIsCj4gLQkJCWVudHJ5 LT53cl9hZGRyLCBlbnRyeS0+YmxvY2tfaWQsIGVudHJ5LT50ZXN0X2lkLCB2YWwpOwo+IC19Cj4g LQo+IC1zdGF0aWMgdm9pZCBfZHB1X2RlYnVnX2J1c19wcGIxX2R1bXAodm9pZCBfX2lvbWVtICpt ZW1fYmFzZSwKPiAtCQlzdHJ1Y3QgZHB1X2RlYnVnX2J1c19lbnRyeSAqZW50cnksIHUzMiB2YWwp Cj4gLXsKPiAtCWlmICghKHZhbCAmIEJJVCgxNSkpKQo+IC0JCXJldHVybjsKPiAtCj4gLQlEUk1f REVWX0VSUk9SKGRwdV9kYmdfYmFzZS5kZXYsICJwcGIxIDB4JXggJWQgJWQgMHgleFxuIiwKPiAt CQkJZW50cnktPndyX2FkZHIsIGVudHJ5LT5ibG9ja19pZCwgZW50cnktPnRlc3RfaWQsIHZhbCk7 Cj4gLX0KPiAtCj4gLXN0YXRpYyBzdHJ1Y3QgZHB1X2RlYnVnX2J1c19lbnRyeSBkYmdfYnVzX2Rw dV84OTk4W10gPSB7Cj4gLQo+IC0JLyogVW5wYWNrIDAgc3NwcCAwKi8KPiAtCXsgREJHQlVTX1NT UFAwLCA1MCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDYwLCAyIH0sCj4gLQl7IERCR0JVU19T U1BQMCwgNzAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA4NSwgMiB9LAo+IC0KPiAtCS8qIFVw YWNrIDAgc3NwcCAxKi8KPiAtCXsgREJHQlVTX1NTUFAxLCA1MCwgMiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDYwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNzAsIDIgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA4NSwgMiB9LAo+IC0KPiAtCS8qIHNjaGVkdWxlciAqLwo+IC0JeyBEQkdCVVNfRFNQ UCwgMTMwLCAwIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxMzAsIDEgfSwKPiAtCXsgREJHQlVTX0RT UFAsIDEzMCwgMiB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTMwLCAzIH0sCj4gLQl7IERCR0JVU19E U1BQLCAxMzAsIDQgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDEzMCwgNSB9LAo+IC0KPiAtCS8qIHFz ZWVkICovCj4gLQl7IERCR0JVU19TU1BQMCwgNiwgMH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNiwg MX0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjYsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI2LCAx fSwKPiAtCXsgREJHQlVTX1NTUFAxLCA2LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA2LCAxfSwK PiAtCXsgREJHQlVTX1NTUFAxLCAyNiwgMH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjYsIDF9LAo+ IC0KPiAtCS8qIHNjYWxlICovCj4gLQl7IERCR0JVU19TU1BQMCwgMTYsIDB9LAo+IC0JeyBEQkdC VVNfU1NQUDAsIDE2LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNiwgMH0sCj4gLQl7IERCR0JV U19TU1BQMCwgMzYsIDF9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDE2LCAwfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAxNiwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzYsIDB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDM2LCAxfSwKPiAtCj4gLQkvKiBmZXRjaCBzc3BwMCAqLwo+IC0KPiAtCS8qIHZpZyAw ICovCj4gLQl7IERCR0JVU19TU1BQMCwgMCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDAsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMCwgMyB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDAsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAwLCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDAsIDcgfSwK PiAtCj4gLQl7IERCR0JVU19TU1BQMCwgMSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDEsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMSwgMyB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDEsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxLCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDEsIDcgfSwK PiAtCj4gLQl7IERCR0JVU19TU1BQMCwgMiwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMiwgMyB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyLCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMiwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIsIDcgfSwK PiAtCj4gLQl7IERCR0JVU19TU1BQMCwgNCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNCwgMyB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0LCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgNCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQsIDcgfSwK PiAtCj4gLQl7IERCR0JVU19TU1BQMCwgNSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDUsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA1LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNSwgMyB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDUsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA1LCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgNSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDUsIDcgfSwK PiAtCj4gLQkvKiB2aWcgMiAqLwo+IC0JeyBEQkdCVVNfU1NQUDAsIDIwLCAwIH0sCj4gLQl7IERC R0JVU19TU1BQMCwgMjAsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMCwgMiB9LAo+IC0JeyBE QkdCVVNfU1NQUDAsIDIwLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjAsIDQgfSwKPiAtCXsg REJHQlVTX1NTUFAwLCAyMCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIwLCA2IH0sCj4gLQl7 IERCR0JVU19TU1BQMCwgMjAsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMCwgMjEsIDAgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCAyMSwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIxLCAyIH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMjEsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMSwgNCB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIxLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjEsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMSwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCAy MiwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIyLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwg MjIsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMiwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAs IDIyLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjIsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAw LCAyMiwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIyLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNf U1NQUDAsIDI0LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjQsIDEgfSwKPiAtCXsgREJHQlVT X1NTUFAwLCAyNCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI0LCAzIH0sCj4gLQl7IERCR0JV U19TU1BQMCwgMjQsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNCwgNSB9LAo+IC0JeyBEQkdC VVNfU1NQUDAsIDI0LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjQsIDcgfSwKPiAtCj4gLQl7 IERCR0JVU19TU1BQMCwgMjUsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNSwgMSB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDI1LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjUsIDMgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCAyNSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI1LCA1IH0sCj4g LQl7IERCR0JVU19TU1BQMCwgMjUsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNSwgNyB9LAo+ IC0KPiAtCS8qIGRtYSAyICovCj4gLQl7IERCR0JVU19TU1BQMCwgMzAsIDAgfSwKPiAtCXsgREJH QlVTX1NTUFAwLCAzMCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMwLCAyIH0sCj4gLQl7IERC R0JVU19TU1BQMCwgMzAsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMCwgNCB9LAo+IC0JeyBE QkdCVVNfU1NQUDAsIDMwLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzAsIDYgfSwKPiAtCXsg REJHQlVTX1NTUFAwLCAzMCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCAzMSwgMCB9LAo+ IC0JeyBEQkdCVVNfU1NQUDAsIDMxLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzEsIDIgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCAzMSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMxLCA0IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMzEsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMSwgNiB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMxLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDMy LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzIsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAz MiwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMyLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwg MzIsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMiwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAs IDMyLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzIsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19T U1BQMCwgMzMsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMywgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDAsIDMzLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzMsIDMgfSwKPiAtCXsgREJHQlVT X1NTUFAwLCAzMywgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMzLCA1IH0sCj4gLQl7IERCR0JV U19TU1BQMCwgMzMsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMywgNyB9LAo+IC0KPiAtCXsg REJHQlVTX1NTUFAwLCAzNCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM0LCAxIH0sCj4gLQl7 IERCR0JVU19TU1BQMCwgMzQsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNCwgMyB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDM0LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzQsIDUgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCAzNCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM0LCA3IH0sCj4g LQo+IC0JeyBEQkdCVVNfU1NQUDAsIDM1LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzUsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM1LCAz IH0sCj4gLQo+IC0JLyogZG1hIDAgKi8KPiAtCXsgREJHQlVTX1NTUFAwLCA0MCwgMCB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDQwLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDAsIDIgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCA0MCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQwLCA0IH0sCj4g LQl7IERCR0JVU19TU1BQMCwgNDAsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MCwgNiB9LAo+ IC0JeyBEQkdCVVNfU1NQUDAsIDQwLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDQxLCAw IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDEsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MSwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQxLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDEs IDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQx LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDEsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQ MCwgNDIsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MiwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQ UDAsIDQyLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDIsIDMgfSwKPiAtCXsgREJHQlVTX1NT UFAwLCA0MiwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQyLCA1IH0sCj4gLQl7IERCR0JVU19T U1BQMCwgNDIsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MiwgNyB9LAo+IC0KPiAtCXsgREJH QlVTX1NTUFAwLCA0NCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ0LCAxIH0sCj4gLQl7IERC R0JVU19TU1BQMCwgNDQsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NCwgMyB9LAo+IC0JeyBE QkdCVVNfU1NQUDAsIDQ0LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDQsIDUgfSwKPiAtCXsg REJHQlVTX1NTUFAwLCA0NCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ0LCA3IH0sCj4gLQo+ IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDUsIDEgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCA0NSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCAzIH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgNDUsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NSwgNSB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDUsIDcg fSwKPiAtCj4gLQkvKiBmZXRjaCBzc3BwMSAqLwo+IC0JLyogdmlnIDEgKi8KPiAtCXsgREJHQlVT X1NTUFAxLCAwLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMCwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAwLCAzIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDAsIDUgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAwLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMCwgNyB9LAo+IC0KPiAtCXsgREJHQlVT X1NTUFAxLCAxLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMSwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDEsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAxLCAzIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDEsIDUgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAxLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMSwgNyB9LAo+IC0KPiAtCXsgREJHQlVT X1NTUFAxLCAyLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMiwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDIsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyLCAzIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMiwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIsIDUgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAyLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMiwgNyB9LAo+IC0KPiAtCXsgREJHQlVT X1NTUFAxLCA0LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNCwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDQsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0LCAzIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgNCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQsIDUgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA0LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNCwgNyB9LAo+IC0KPiAtCXsgREJHQlVT X1NTUFAxLCA1LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNSwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDUsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA1LCAzIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgNSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDUsIDUgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA1LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNSwgNyB9LAo+IC0KPiAtCS8qIHZpZyAz ICovCj4gLQl7IERCR0JVU19TU1BQMSwgMjAsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMCwg MSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjAs IDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIw LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjAsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAy MCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAxLCAyMSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDIxLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjEsIDIgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAyMSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIxLCA0IH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMjEsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMSwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDIxLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDIyLCAwIH0sCj4gLQl7IERC R0JVU19TU1BQMSwgMjIsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMiwgMiB9LAo+IC0JeyBE QkdCVVNfU1NQUDEsIDIyLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjIsIDQgfSwKPiAtCXsg REJHQlVTX1NTUFAxLCAyMiwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIyLCA2IH0sCj4gLQl7 IERCR0JVU19TU1BQMSwgMjIsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgMjQsIDAgfSwK PiAtCXsgREJHQlVTX1NTUFAxLCAyNCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI0LCAyIH0s Cj4gLQl7IERCR0JVU19TU1BQMSwgMjQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNCwgNCB9 LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjQsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAxLCAy NSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI1LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwg MjUsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEs IDI1LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjUsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCAyNSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI1LCA3IH0sCj4gLQo+IC0JLyogZG1hIDMg Ki8KPiAtCXsgREJHQlVTX1NTUFAxLCAzMCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMwLCAx IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMCwg MyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMwLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzAs IDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMw LCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDMxLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgMzEsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDMxLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzEsIDQgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAzMSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMxLCA2IH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMzEsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgMzIsIDAgfSwKPiAtCXsgREJH QlVTX1NTUFAxLCAzMiwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMyLCAyIH0sCj4gLQl7IERC R0JVU19TU1BQMSwgMzIsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMiwgNCB9LAo+IC0JeyBE QkdCVVNfU1NQUDEsIDMyLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzIsIDYgfSwKPiAtCXsg REJHQlVTX1NTUFAxLCAzMiwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAxLCAzMywgMCB9LAo+ IC0JeyBEQkdCVVNfU1NQUDEsIDMzLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDIgfSwK PiAtCXsgREJHQlVTX1NTUFAxLCAzMywgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMzLCA0IH0s Cj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMywgNiB9 LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMzLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDM0 LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzQsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAz NCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDM0LCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwg MzQsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEs IDM0LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzQsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19T U1BQMSwgMzUsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNSwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDM1LCAyIH0sCj4gLQo+IC0JLyogZG1hIDEgKi8KPiAtCXsgREJHQlVTX1NTUFAxLCA0 MCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQwLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwg NDAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEs IDQwLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDAsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCA0MCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQwLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNf U1NQUDEsIDQxLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDEsIDEgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA0MSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQxLCAzIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgNDEsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MSwgNSB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDQxLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDEsIDcgfSwKPiAtCj4gLQl7 IERCR0JVU19TU1BQMSwgNDIsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MiwgMSB9LAo+IC0J eyBEQkdCVVNfU1NQUDEsIDQyLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDIsIDMgfSwKPiAt CXsgREJHQlVTX1NTUFAxLCA0MiwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQyLCA1IH0sCj4g LQl7IERCR0JVU19TU1BQMSwgNDIsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MiwgNyB9LAo+ IC0KPiAtCXsgREJHQlVTX1NTUFAxLCA0NCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ0LCAx IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDQsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NCwg MyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ0LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDQs IDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ0 LCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ1LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgNDUsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDQ1LCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDUsIDQgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA0NSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ1LCA2IH0sCj4gLQl7IERCR0JVU19T U1BQMSwgNDUsIDcgfSwKPiAtCj4gLQkvKiBjdXJzb3IgMSAqLwo+IC0JeyBEQkdCVVNfU1NQUDEs IDgwLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODAsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCA4MCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgwLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgODAsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4MCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDgwLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODAsIDcgfSwKPiAtCj4gLQl7IERCR0JV U19TU1BQMSwgODEsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4MSwgMSB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDgxLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODEsIDMgfSwKPiAtCXsgREJH QlVTX1NTUFAxLCA4MSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgxLCA1IH0sCj4gLQl7IERC R0JVU19TU1BQMSwgODEsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4MSwgNyB9LAo+IC0KPiAt CXsgREJHQlVTX1NTUFAxLCA4MiwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgyLCAxIH0sCj4g LQl7IERCR0JVU19TU1BQMSwgODIsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4MiwgMyB9LAo+ IC0JeyBEQkdCVVNfU1NQUDEsIDgyLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODIsIDUgfSwK PiAtCXsgREJHQlVTX1NTUFAxLCA4MiwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgyLCA3IH0s Cj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDgzLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODMs IDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4MywgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgz LCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODMsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4 MywgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgzLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwg ODMsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgODQsIDAgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA4NCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDg0LCAyIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgODQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA4NCwgNCB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDg0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgODQsIDYgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA4NCwgNyB9LAo+IC0KPiAtCS8qIGRzcHAgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDEz LCAwIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxOSwgMCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTQs IDAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAxIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxNCwg MyB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMjAsIDAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAx IH0sCj4gLQl7IERCR0JVU19EU1BQLCAyMCwgMyB9LAo+IC0KPiAtCS8qIHBwYl8wICovCj4gLQl7 IERCR0JVU19EU1BQLCAzMSwgMCwgX2RwdV9kZWJ1Z19idXNfcHBiMF9kdW1wIH0sCj4gLQl7IERC R0JVU19EU1BQLCAzMywgMCwgX2RwdV9kZWJ1Z19idXNfcHBiMF9kdW1wIH0sCj4gLQl7IERCR0JV U19EU1BQLCAzNSwgMCwgX2RwdV9kZWJ1Z19idXNfcHBiMF9kdW1wIH0sCj4gLQl7IERCR0JVU19E U1BQLCA0MiwgMCwgX2RwdV9kZWJ1Z19idXNfcHBiMF9kdW1wIH0sCj4gLQo+IC0JLyogcHBiXzEg Ki8KPiAtCXsgREJHQlVTX0RTUFAsIDMyLCAwLCBfZHB1X2RlYnVnX2J1c19wcGIxX2R1bXAgfSwK PiAtCXsgREJHQlVTX0RTUFAsIDM0LCAwLCBfZHB1X2RlYnVnX2J1c19wcGIxX2R1bXAgfSwKPiAt CXsgREJHQlVTX0RTUFAsIDM2LCAwLCBfZHB1X2RlYnVnX2J1c19wcGIxX2R1bXAgfSwKPiAtCXsg REJHQlVTX0RTUFAsIDQzLCAwLCBfZHB1X2RlYnVnX2J1c19wcGIxX2R1bXAgfSwKPiAtCj4gLQkv KiBsbV9sdXQgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDEwOSwgMCB9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgMTA1LCAwIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxMDMsIDAgfSwKPiAtCj4gLQkvKiB0ZWFy LWNoZWNrICovCj4gLQl7IERCR0JVU19QRVJJUEgsIDYzLCAwIH0sCj4gLQl7IERCR0JVU19QRVJJ UEgsIDY0LCAwIH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDY1LCAwIH0sCj4gLQl7IERCR0JVU19Q RVJJUEgsIDczLCAwIH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDc0LCAwIH0sCj4gLQo+IC0JLyog Y3Jvc3NiYXIgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDAsIDAsIF9kcHVfZGVidWdfYnVzX3hiYXJf ZHVtcCB9LAo+IC0KPiAtCS8qIHJvdGF0b3IgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDksIDB9LAo+ IC0KPiAtCS8qIGJsZW5kICovCj4gLQkvKiBMTTAgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDYzLCAw fSwKPiAtCXsgREJHQlVTX0RTUFAsIDYzLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDYzLCAyfSwK PiAtCXsgREJHQlVTX0RTUFAsIDYzLCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDYzLCA0fSwKPiAt CXsgREJHQlVTX0RTUFAsIDYzLCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDYzLCA2fSwKPiAtCXsg REJHQlVTX0RTUFAsIDYzLCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBE QkdCVVNfRFNQUCwgNjQsIDB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjQsIDF9LAo+IC0JeyBEQkdC VVNfRFNQUCwgNjQsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjQsIDN9LAo+IC0JeyBEQkdCVVNf RFNQUCwgNjQsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjQsIDV9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgNjQsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjQsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1 bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA2NSwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA2 NSwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA2NSwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA2NSwg M30sCj4gLQl7IERCR0JVU19EU1BQLCA2NSwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA2NSwgNX0s Cj4gLQl7IERCR0JVU19EU1BQLCA2NSwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA2NSwgNywgX2Rw dV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDY2LCAwfSwKPiAt CXsgREJHQlVTX0RTUFAsIDY2LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY2LCAyfSwKPiAtCXsg REJHQlVTX0RTUFAsIDY2LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY2LCA0fSwKPiAtCXsgREJH QlVTX0RTUFAsIDY2LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDY2LCA2fSwKPiAtCXsgREJHQlVT X0RTUFAsIDY2LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNf RFNQUCwgNjcsIDB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjcsIDF9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgNjcsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjcsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwg NjcsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjcsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjcs IDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjcsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwK PiAtCj4gLQl7IERCR0JVU19EU1BQLCA2OCwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA2OCwgMX0s Cj4gLQl7IERCR0JVU19EU1BQLCA2OCwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA2OCwgM30sCj4g LQl7IERCR0JVU19EU1BQLCA2OCwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA2OCwgNX0sCj4gLQl7 IERCR0JVU19EU1BQLCA2OCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA2OCwgNywgX2RwdV9kZWJ1 Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDY5LCAwfSwKPiAtCXsgREJH QlVTX0RTUFAsIDY5LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY5LCAyfSwKPiAtCXsgREJHQlVT X0RTUFAsIDY5LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY5LCA0fSwKPiAtCXsgREJHQlVTX0RT UFAsIDY5LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDY5LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAs IDY5LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JLyogTE0xICovCj4gLQl7 IERCR0JVU19EU1BQLCA3MCwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgMX0sCj4gLQl7IERC R0JVU19EU1BQLCA3MCwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgM30sCj4gLQl7IERCR0JV U19EU1BQLCA3MCwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgNX0sCj4gLQl7IERCR0JVU19E U1BQLCA3MCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgNywgX2RwdV9kZWJ1Z19idXNfbG1f ZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDcxLCAwfSwKPiAtCXsgREJHQlVTX0RTUFAs IDcxLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDcx LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA1 fSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA3LCBf ZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDB9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDJ9LAo+IC0J eyBEQkdCVVNfRFNQUCwgNzIsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDR9LAo+IC0JeyBE QkdCVVNfRFNQUCwgNzIsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDZ9LAo+IC0JeyBEQkdC VVNfRFNQUCwgNzIsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JV U19EU1BQLCA3MywgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgMX0sCj4gLQl7IERCR0JVU19E U1BQLCA3MywgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgM30sCj4gLQl7IERCR0JVU19EU1BQ LCA3MywgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA3 MywgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9 LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDc0LCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCAx fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCAzfSwK PiAtCXsgREJHQlVTX0RTUFAsIDc0LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCA1fSwKPiAt CXsgREJHQlVTX0RTUFAsIDc0LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCA3LCBfZHB1X2Rl YnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDB9LAo+IC0JeyBE QkdCVVNfRFNQUCwgNzUsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDJ9LAo+IC0JeyBEQkdC VVNfRFNQUCwgNzUsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDR9LAo+IC0JeyBEQkdCVVNf RFNQUCwgNzUsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgNzUsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQ LCA3NiwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA3 NiwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA3Niwg NH0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgNn0s Cj4gLQl7IERCR0JVU19EU1BQLCA3NiwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0K PiAtCS8qIExNMiAqLwo+IC0JeyBEQkdCVVNfRFNQUCwgNzcsIDB9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgNzcsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzcsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwg NzcsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzcsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzcs IDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzcsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzcsIDcs IF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA3OCwgMH0s Cj4gLQl7IERCR0JVU19EU1BQLCA3OCwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA3OCwgMn0sCj4g LQl7IERCR0JVU19EU1BQLCA3OCwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA3OCwgNH0sCj4gLQl7 IERCR0JVU19EU1BQLCA3OCwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA3OCwgNn0sCj4gLQl7IERC R0JVU19EU1BQLCA3OCwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJH QlVTX0RTUFAsIDc5LCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc5LCAxfSwKPiAtCXsgREJHQlVT X0RTUFAsIDc5LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc5LCAzfSwKPiAtCXsgREJHQlVTX0RT UFAsIDc5LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc5LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAs IDc5LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc5LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1w IH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAs IDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDN9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDV9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgODAsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODAsIDcsIF9kcHVf ZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA4MSwgMH0sCj4gLQl7 IERCR0JVU19EU1BQLCA4MSwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA4MSwgMn0sCj4gLQl7IERC R0JVU19EU1BQLCA4MSwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA4MSwgNH0sCj4gLQl7IERCR0JV U19EU1BQLCA4MSwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA4MSwgNn0sCj4gLQl7IERCR0JVU19E U1BQLCA4MSwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RT UFAsIDgyLCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDgyLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAs IDgyLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDgyLCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDgy LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDgyLCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDgyLCA2 fSwKPiAtCXsgREJHQlVTX0RTUFAsIDgyLCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4g LQo+IC0JeyBEQkdCVVNfRFNQUCwgODMsIDB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODMsIDF9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgODMsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODMsIDN9LAo+IC0J eyBEQkdCVVNfRFNQUCwgODMsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODMsIDV9LAo+IC0JeyBE QkdCVVNfRFNQUCwgODMsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODMsIDcsIF9kcHVfZGVidWdf YnVzX2xtX2R1bXAgfSwKPiAtCj4gLQkvKiBjc2MgKi8KPiAtCXsgREJHQlVTX1NTUFAwLCA3LCAw fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA3LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNywgMH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMjcsIDF9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDcsIDB9LAo+ IC0JeyBEQkdCVVNfU1NQUDEsIDcsIDF9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI3LCAwfSwKPiAt CXsgREJHQlVTX1NTUFAxLCAyNywgMX0sCj4gLQo+IC0JLyogcGNjICovCj4gLQl7IERCR0JVU19T U1BQMCwgMywgIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIzLCAzfSwKPiAtCXsgREJHQlVTX1NT UFAwLCAzMywgM30sCj4gLQl7IERCR0JVU19TU1BQMCwgNDMsIDN9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDMsICAzfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMywgM30sCj4gLQl7IERCR0JVU19TU1BQ MSwgMzMsIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQzLCAzfSwKPiAtCj4gLQkvKiBzcGEgKi8K PiAtCXsgREJHQlVTX1NTUFAwLCA4LCAgMH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjgsIDB9LAo+ IC0JeyBEQkdCVVNfU1NQUDEsIDgsICAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyOCwgMH0sCj4g LQl7IERCR0JVU19EU1BQLCAxMywgMH0sCj4gLQl7IERCR0JVU19EU1BQLCAxOSwgMH0sCj4gLQo+ IC0JLyogaWdjICovCj4gLQl7IERCR0JVU19TU1BQMCwgOSwgIDB9LAo+IC0JeyBEQkdCVVNfU1NQ UDAsIDksICAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA5LCAgM30sCj4gLQl7IERCR0JVU19TU1BQ MCwgMjksIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI5LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAw LCAyOSwgM30sCj4gLQl7IERCR0JVU19TU1BQMCwgMTcsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAs IDE3LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxNywgM30sCj4gLQl7IERCR0JVU19TU1BQMCwg MzcsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM3LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAz NywgM30sCj4gLQl7IERCR0JVU19TU1BQMCwgNDYsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ2 LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NiwgM30sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEs IDksICAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA5LCAgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwg OSwgIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI5LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAy OSwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjksIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDE3 LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAxNywgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMTcs IDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDM3LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNywg MX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzcsIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ2LCAw fSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NiwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDYsIDN9 LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAx fSwKPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAwfSwK PiAtCXsgREJHQlVTX0RTUFAsIDIwLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAzfSwKPiAt Cj4gLQl7IERCR0JVU19QRVJJUEgsIDYwLCAwfSwKPiAtfTsKPiAtCj4gLXN0YXRpYyBzdHJ1Y3Qg ZHB1X2RlYnVnX2J1c19lbnRyeSBkYmdfYnVzX2RwdV9zZG04NDVbXSA9IHsKPiAtCj4gLQkvKiBV bnBhY2sgMCBzc3BwIDAqLwo+IC0JeyBEQkdCVVNfU1NQUDAsIDUwLCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMCwgNjAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA3MCwgMiB9LAo+IC0KPiAtCS8q IFVwYWNrIDAgc3NwcCAxKi8KPiAtCXsgREJHQlVTX1NTUFAxLCA1MCwgMiB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDYwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNzAsIDIgfSwKPiAtCj4gLQkv KiBzY2hlZHVsZXIgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDEzMCwgMCB9LAo+IC0JeyBEQkdCVVNf RFNQUCwgMTMwLCAxIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxMzAsIDIgfSwKPiAtCXsgREJHQlVT X0RTUFAsIDEzMCwgMyB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTMwLCA0IH0sCj4gLQl7IERCR0JV U19EU1BQLCAxMzAsIDUgfSwKPiAtCj4gLQkvKiBxc2VlZCAqLwo+IC0JeyBEQkdCVVNfU1NQUDAs IDYsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDYsIDF9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI2 LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNiwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgNiwg MH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNiwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjYsIDB9 LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI2LCAxfSwKPiAtCj4gLQkvKiBzY2FsZSAqLwo+IC0JeyBE QkdCVVNfU1NQUDAsIDE2LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxNiwgMX0sCj4gLQl7IERC R0JVU19TU1BQMCwgMzYsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM2LCAxfSwKPiAtCXsgREJH QlVTX1NTUFAxLCAxNiwgMH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMTYsIDF9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDM2LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNiwgMX0sCj4gLQo+IC0JLyog ZmV0Y2ggc3NwcDAgKi8KPiAtCj4gLQkvKiB2aWcgMCAqLwo+IC0JeyBEQkdCVVNfU1NQUDAsIDAs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAwLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMCwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDAsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAwLCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDAsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAwLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDEs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMSwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDEsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxLCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDEsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAxLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDIs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMiwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyLCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMiwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDQs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNCwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0LCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0LCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDUs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA1LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNSwg MiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDUsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA1LCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDUsIDYg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA1LCA3IH0sCj4gLQo+IC0JLyogdmlnIDIgKi8KPiAtCXsg REJHQlVTX1NTUFAwLCAyMCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIwLCAxIH0sCj4gLQl7 IERCR0JVU19TU1BQMCwgMjAsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMCwgMyB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDIwLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjAsIDUgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCAyMCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIwLCA3IH0sCj4g LQo+IC0JeyBEQkdCVVNfU1NQUDAsIDIxLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjEsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMSwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIxLCAz IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjEsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMSwg NSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIxLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjEs IDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMCwgMjIsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAw LCAyMiwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDIyLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQ MCwgMjIsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyMiwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQ UDAsIDIyLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjIsIDYgfSwKPiAtCXsgREJHQlVTX1NT UFAwLCAyMiwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCAyNCwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDAsIDI0LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjQsIDIgfSwKPiAtCXsgREJH QlVTX1NTUFAwLCAyNCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI0LCA0IH0sCj4gLQl7IERC R0JVU19TU1BQMCwgMjQsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNCwgNiB9LAo+IC0JeyBE QkdCVVNfU1NQUDAsIDI0LCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDI1LCAwIH0sCj4g LQl7IERCR0JVU19TU1BQMCwgMjUsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNSwgMiB9LAo+ IC0JeyBEQkdCVVNfU1NQUDAsIDI1LCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjUsIDQgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCAyNSwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDI1LCA2IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgMjUsIDcgfSwKPiAtCj4gLQkvKiBkbWEgMiAqLwo+IC0JeyBE QkdCVVNfU1NQUDAsIDMwLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzAsIDEgfSwKPiAtCXsg REJHQlVTX1NTUFAwLCAzMCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMwLCAzIH0sCj4gLQl7 IERCR0JVU19TU1BQMCwgMzAsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMCwgNSB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDMwLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzAsIDcgfSwKPiAt Cj4gLQl7IERCR0JVU19TU1BQMCwgMzEsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMSwgMSB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMxLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzEsIDMg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMxLCA1 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzEsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMSwg NyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCAzMiwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAs IDMyLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzIsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAw LCAzMiwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMyLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQ MCwgMzIsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMiwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQ UDAsIDMyLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDMzLCAwIH0sCj4gLQl7IERCR0JV U19TU1BQMCwgMzMsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMywgMiB9LAo+IC0JeyBEQkdC VVNfU1NQUDAsIDMzLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzMsIDQgfSwKPiAtCXsgREJH QlVTX1NTUFAwLCAzMywgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDMzLCA2IH0sCj4gLQl7IERC R0JVU19TU1BQMCwgMzMsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMCwgMzQsIDAgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCAzNCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM0LCAyIH0sCj4g LQl7IERCR0JVU19TU1BQMCwgMzQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNCwgNCB9LAo+ IC0JeyBEQkdCVVNfU1NQUDAsIDM0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzQsIDYgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCAzNCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCAzNSwg MCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDM1LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMzUs IDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNSwgMyB9LAo+IC0KPiAtCS8qIGRtYSAwICovCj4g LQl7IERCR0JVU19TU1BQMCwgNDAsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MCwgMSB9LAo+ IC0JeyBEQkdCVVNfU1NQUDAsIDQwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDAsIDMgfSwK PiAtCXsgREJHQlVTX1NTUFAwLCA0MCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQwLCA1IH0s Cj4gLQl7IERCR0JVU19TU1BQMCwgNDAsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MCwgNyB9 LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCA0MSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQx LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDEsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0 MSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQxLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMCwg NDEsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAs IDQxLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDAsIDQyLCAwIH0sCj4gLQl7IERCR0JVU19T U1BQMCwgNDIsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0MiwgMiB9LAo+IC0JeyBEQkdCVVNf U1NQUDAsIDQyLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDIsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAwLCA0MiwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQyLCA2IH0sCj4gLQl7IERCR0JV U19TU1BQMCwgNDIsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMCwgNDQsIDAgfSwKPiAtCXsg REJHQlVTX1NTUFAwLCA0NCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ0LCAyIH0sCj4gLQl7 IERCR0JVU19TU1BQMCwgNDQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NCwgNCB9LAo+IC0J eyBEQkdCVVNfU1NQUDAsIDQ0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDQsIDYgfSwKPiAt CXsgREJHQlVTX1NTUFAwLCA0NCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAwLCA0NSwgMCB9 LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDUsIDIg fSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCA0 IH0sCj4gLQl7IERCR0JVU19TU1BQMCwgNDUsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA0NSwg NiB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ1LCA3IH0sCj4gLQo+IC0JLyogZmV0Y2ggc3NwcDEg Ki8KPiAtCS8qIHZpZyAxICovCj4gLQl7IERCR0JVU19TU1BQMSwgMCwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDAsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAwLCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgMCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDAsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAwLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMCwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDAsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgMSwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDEsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAxLCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgMSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDEsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAxLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMSwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDEsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgMiwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDIsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyLCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgMiwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAyLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMiwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDIsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgNCwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDQsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0LCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgNCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNCwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDQsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgNSwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDUsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA1LCAyIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgNSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDUsIDQgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA1LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNSwgNiB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDUsIDcgfSwKPiAtCj4gLQkvKiB2aWcgMyAqLwo+IC0JeyBEQkdCVVNfU1NQUDEsIDIw LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjAsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAy MCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIwLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwg MjAsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMCwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEs IDIwLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjAsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19T U1BQMSwgMjEsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMSwgMSB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDIxLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjEsIDMgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAyMSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIxLCA1IH0sCj4gLQl7IERCR0JV U19TU1BQMSwgMjEsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMSwgNyB9LAo+IC0KPiAtCXsg REJHQlVTX1NTUFAxLCAyMiwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIyLCAxIH0sCj4gLQl7 IERCR0JVU19TU1BQMSwgMjIsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyMiwgMyB9LAo+IC0J eyBEQkdCVVNfU1NQUDEsIDIyLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjIsIDUgfSwKPiAt CXsgREJHQlVTX1NTUFAxLCAyMiwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDIyLCA3IH0sCj4g LQo+IC0JeyBEQkdCVVNfU1NQUDEsIDI0LCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjQsIDEg fSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNCwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI0LCAz IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjQsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNCwg NSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI0LCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjQs IDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgMjUsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCAyNSwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI1LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgMjUsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNSwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDI1LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMjUsIDYgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCAyNSwgNyB9LAo+IC0KPiAtCS8qIGRtYSAzICovCj4gLQl7IERCR0JVU19TU1BQMSwgMzAs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMw LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzAsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAz MCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMwLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwg MzAsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NT UFAxLCAzMSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMxLCAxIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgMzEsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMSwgMyB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDMxLCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzEsIDUgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAzMSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMxLCA3IH0sCj4gLQo+IC0JeyBE QkdCVVNfU1NQUDEsIDMyLCAwIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzIsIDEgfSwKPiAtCXsg REJHQlVTX1NTUFAxLCAzMiwgMiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMyLCAzIH0sCj4gLQl7 IERCR0JVU19TU1BQMSwgMzIsIDQgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMiwgNSB9LAo+IC0J eyBEQkdCVVNfU1NQUDEsIDMyLCA2IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzIsIDcgfSwKPiAt Cj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMywgMSB9 LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMzLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDMg fSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMywgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMzLCA1 IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzMywg NyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAxLCAzNCwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEs IDM0LCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgMzQsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCAzNCwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDM0LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgMzQsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNCwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDM0LCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDM1LCAwIH0sCj4gLQl7IERCR0JV U19TU1BQMSwgMzUsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNSwgMiB9LAo+IC0KPiAtCS8q IGRtYSAxICovCj4gLQl7IERCR0JVU19TU1BQMSwgNDAsIDAgfSwKPiAtCXsgREJHQlVTX1NTUFAx LCA0MCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQwLCAyIH0sCj4gLQl7IERCR0JVU19TU1BQ MSwgNDAsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQ UDEsIDQwLCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDAsIDYgfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA0MCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NTUFAxLCA0MSwgMCB9LAo+IC0JeyBEQkdC VVNfU1NQUDEsIDQxLCAxIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDEsIDIgfSwKPiAtCXsgREJH QlVTX1NTUFAxLCA0MSwgMyB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQxLCA0IH0sCj4gLQl7IERC R0JVU19TU1BQMSwgNDEsIDUgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MSwgNiB9LAo+IC0JeyBE QkdCVVNfU1NQUDEsIDQxLCA3IH0sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDQyLCAwIH0sCj4g LQl7IERCR0JVU19TU1BQMSwgNDIsIDEgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0MiwgMiB9LAo+ IC0JeyBEQkdCVVNfU1NQUDEsIDQyLCAzIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDIsIDQgfSwK PiAtCXsgREJHQlVTX1NTUFAxLCA0MiwgNSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQyLCA2IH0s Cj4gLQl7IERCR0JVU19TU1BQMSwgNDIsIDcgfSwKPiAtCj4gLQl7IERCR0JVU19TU1BQMSwgNDQs IDAgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NCwgMSB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ0 LCAyIH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDQsIDMgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0 NCwgNCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ0LCA1IH0sCj4gLQl7IERCR0JVU19TU1BQMSwg NDQsIDYgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NCwgNyB9LAo+IC0KPiAtCXsgREJHQlVTX1NT UFAxLCA0NSwgMCB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ1LCAxIH0sCj4gLQl7IERCR0JVU19T U1BQMSwgNDUsIDIgfSwKPiAtCXsgREJHQlVTX1NTUFAxLCA0NSwgMyB9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDQ1LCA0IH0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDUsIDUgfSwKPiAtCXsgREJHQlVT X1NTUFAxLCA0NSwgNiB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ1LCA3IH0sCj4gLQo+IC0JLyog ZHNwcCAqLwo+IC0JeyBEQkdCVVNfRFNQUCwgMTMsIDAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDE5 LCAwIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxNCwgMCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTQs IDEgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAzIH0sCj4gLQl7IERCR0JVU19EU1BQLCAyMCwg MCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMjAsIDEgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAz IH0sCj4gLQo+IC0JLyogcHBiXzAgKi8KPiAtCXsgREJHQlVTX0RTUFAsIDMxLCAwLCBfZHB1X2Rl YnVnX2J1c19wcGIwX2R1bXAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDMzLCAwLCBfZHB1X2RlYnVn X2J1c19wcGIwX2R1bXAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDM1LCAwLCBfZHB1X2RlYnVnX2J1 c19wcGIwX2R1bXAgfSwKPiAtCXsgREJHQlVTX0RTUFAsIDQyLCAwLCBfZHB1X2RlYnVnX2J1c19w cGIwX2R1bXAgfSwKPiAtCj4gLQkvKiBwcGJfMSAqLwo+IC0JeyBEQkdCVVNfRFNQUCwgMzIsIDAs IF9kcHVfZGVidWdfYnVzX3BwYjFfZHVtcCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMzQsIDAsIF9k cHVfZGVidWdfYnVzX3BwYjFfZHVtcCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMzYsIDAsIF9kcHVf ZGVidWdfYnVzX3BwYjFfZHVtcCB9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNDMsIDAsIF9kcHVfZGVi dWdfYnVzX3BwYjFfZHVtcCB9LAo+IC0KPiAtCS8qIGxtX2x1dCAqLwo+IC0JeyBEQkdCVVNfRFNQ UCwgMTA5LCAwIH0sCj4gLQl7IERCR0JVU19EU1BQLCAxMDUsIDAgfSwKPiAtCXsgREJHQlVTX0RT UFAsIDEwMywgMCB9LAo+IC0KPiAtCS8qIGNyb3NzYmFyICovCj4gLQl7IERCR0JVU19EU1BQLCAw LCAwLCBfZHB1X2RlYnVnX2J1c194YmFyX2R1bXAgfSwKPiAtCj4gLQkvKiByb3RhdG9yICovCj4g LQl7IERCR0JVU19EU1BQLCA5LCAwfSwKPiAtCj4gLQkvKiBibGVuZCAqLwo+IC0JLyogTE0wICov Cj4gLQl7IERCR0JVU19EU1BQLCA2MywgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA2MywgMn0sCj4g LQl7IERCR0JVU19EU1BQLCA2MywgM30sCj4gLQl7IERCR0JVU19EU1BQLCA2MywgNH0sCj4gLQl7 IERCR0JVU19EU1BQLCA2MywgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA2MywgNn0sCj4gLQl7IERC R0JVU19EU1BQLCA2MywgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJH QlVTX0RTUFAsIDY0LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY0LCAyfSwKPiAtCXsgREJHQlVT X0RTUFAsIDY0LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY0LCA0fSwKPiAtCXsgREJHQlVTX0RT UFAsIDY0LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDY0LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAs IDY0LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwg NjUsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUs IDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUsIDV9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjUsIDcsIF9k cHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA2NiwgMX0sCj4g LQl7IERCR0JVU19EU1BQLCA2NiwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA2NiwgM30sCj4gLQl7 IERCR0JVU19EU1BQLCA2NiwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA2NiwgNX0sCj4gLQl7IERC R0JVU19EU1BQLCA2NiwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA2NiwgNywgX2RwdV9kZWJ1Z19i dXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDY3LCAxfSwKPiAtCXsgREJHQlVT X0RTUFAsIDY3LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDY3LCAzfSwKPiAtCXsgREJHQlVTX0RT UFAsIDY3LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDY3LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAs IDY3LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDY3LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1w IH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjgs IDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDR9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDZ9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgNjgsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4g LQl7IERCR0JVU19EU1BQLCA2OSwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA2OSwgMn0sCj4gLQl7 IERCR0JVU19EU1BQLCA2OSwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA2OSwgNH0sCj4gLQl7IERC R0JVU19EU1BQLCA2OSwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA2OSwgNn0sCj4gLQl7IERCR0JV U19EU1BQLCA2OSwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVT X0RTUFAsIDg0LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg0LCAyfSwKPiAtCXsgREJHQlVTX0RT UFAsIDg0LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg0LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAs IDg0LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg0LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg0 LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0KPiAtCXsgREJHQlVTX0RTUFAs IDg1LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1 LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1LCA1 fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg1LCA3LCBf ZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDg2LCAx fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg2LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg2LCAzfSwK PiAtCXsgREJHQlVTX0RTUFAsIDg2LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg2LCA1fSwKPiAt CXsgREJHQlVTX0RTUFAsIDg2LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg2LCA3LCBfZHB1X2Rl YnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDg3LCAxfSwKPiAt CXsgREJHQlVTX0RTUFAsIDg3LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg3LCAzfSwKPiAtCXsg REJHQlVTX0RTUFAsIDg3LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg3LCA1fSwKPiAtCXsgREJH QlVTX0RTUFAsIDg3LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg3LCA3LCBfZHB1X2RlYnVnX2J1 c19sbV9kdW1wIH0sCj4gLQo+IC0JLyogTE0xICovCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgMX0s Cj4gLQl7IERCR0JVU19EU1BQLCA3MCwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgM30sCj4g LQl7IERCR0JVU19EU1BQLCA3MCwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgNX0sCj4gLQl7 IERCR0JVU19EU1BQLCA3MCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA3MCwgNywgX2RwdV9kZWJ1 Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDcxLCAxfSwKPiAtCXsgREJH QlVTX0RTUFAsIDcxLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCAzfSwKPiAtCXsgREJHQlVT X0RTUFAsIDcxLCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA1fSwKPiAtCXsgREJHQlVTX0RT UFAsIDcxLCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDcxLCA3LCBfZHB1X2RlYnVnX2J1c19sbV9k dW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwg NzIsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIs IDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDZ9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzIsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAt Cj4gLQl7IERCR0JVU19EU1BQLCA3MywgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgMn0sCj4g LQl7IERCR0JVU19EU1BQLCA3MywgM30sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgNH0sCj4gLQl7 IERCR0JVU19EU1BQLCA3MywgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA3MywgNn0sCj4gLQl7IERC R0JVU19EU1BQLCA3MywgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJH QlVTX0RTUFAsIDc0LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCAyfSwKPiAtCXsgREJHQlVT X0RTUFAsIDc0LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCA0fSwKPiAtCXsgREJHQlVTX0RT UFAsIDc0LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc0LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAs IDc0LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwg NzUsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUs IDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDV9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzUsIDcsIF9k cHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgMX0sCj4g LQl7IERCR0JVU19EU1BQLCA3NiwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgM30sCj4gLQl7 IERCR0JVU19EU1BQLCA3NiwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgNX0sCj4gLQl7IERC R0JVU19EU1BQLCA3NiwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA3NiwgNywgX2RwdV9kZWJ1Z19i dXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDg4LCAxfSwKPiAtCXsgREJHQlVT X0RTUFAsIDg4LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDg4LCAzfSwKPiAtCXsgREJHQlVTX0RT UFAsIDg4LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg4LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAs IDg4LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDg4LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1w IH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgODksIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODks IDJ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODksIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODksIDR9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgODksIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODksIDZ9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgODksIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4g LQl7IERCR0JVU19EU1BQLCA5MCwgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA5MCwgMn0sCj4gLQl7 IERCR0JVU19EU1BQLCA5MCwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA5MCwgNH0sCj4gLQl7IERC R0JVU19EU1BQLCA5MCwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA5MCwgNn0sCj4gLQl7IERCR0JV U19EU1BQLCA5MCwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVT X0RTUFAsIDkxLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDkxLCAyfSwKPiAtCXsgREJHQlVTX0RT UFAsIDkxLCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDkxLCA0fSwKPiAtCXsgREJHQlVTX0RTUFAs IDkxLCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDkxLCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDkx LCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JLyogTE0yICovCj4gLQl7IERC R0JVU19EU1BQLCA3NywgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA3NywgMX0sCj4gLQl7IERCR0JV U19EU1BQLCA3NywgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA3NywgM30sCj4gLQl7IERCR0JVU19E U1BQLCA3NywgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA3NywgNX0sCj4gLQl7IERCR0JVU19EU1BQ LCA3NywgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA3NywgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVt cCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDc4LCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4 LCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4LCAz fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4LCA1fSwK PiAtCXsgREJHQlVTX0RTUFAsIDc4LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDc4LCA3LCBfZHB1 X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgNzksIDB9LAo+IC0J eyBEQkdCVVNfRFNQUCwgNzksIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzksIDJ9LAo+IC0JeyBE QkdCVVNfRFNQUCwgNzksIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzksIDR9LAo+IC0JeyBEQkdC VVNfRFNQUCwgNzksIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgNzksIDZ9LAo+IC0JeyBEQkdCVVNf RFNQUCwgNzksIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19E U1BQLCA4MCwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA4MCwgMX0sCj4gLQl7IERCR0JVU19EU1BQ LCA4MCwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA4MCwgM30sCj4gLQl7IERCR0JVU19EU1BQLCA4 MCwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA4MCwgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA4MCwg Nn0sCj4gLQl7IERCR0JVU19EU1BQLCA4MCwgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+ IC0KPiAtCXsgREJHQlVTX0RTUFAsIDgxLCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDgxLCAxfSwK PiAtCXsgREJHQlVTX0RTUFAsIDgxLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDgxLCAzfSwKPiAt CXsgREJHQlVTX0RTUFAsIDgxLCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDgxLCA1fSwKPiAtCXsg REJHQlVTX0RTUFAsIDgxLCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDgxLCA3LCBfZHB1X2RlYnVn X2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNfRFNQUCwgODIsIDB9LAo+IC0JeyBEQkdC VVNfRFNQUCwgODIsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODIsIDJ9LAo+IC0JeyBEQkdCVVNf RFNQUCwgODIsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODIsIDR9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgODIsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgODIsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwg ODIsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA4 MywgMH0sCj4gLQl7IERCR0JVU19EU1BQLCA4MywgMX0sCj4gLQl7IERCR0JVU19EU1BQLCA4Mywg Mn0sCj4gLQl7IERCR0JVU19EU1BQLCA4MywgM30sCj4gLQl7IERCR0JVU19EU1BQLCA4MywgNH0s Cj4gLQl7IERCR0JVU19EU1BQLCA4MywgNX0sCj4gLQl7IERCR0JVU19EU1BQLCA4MywgNn0sCj4g LQl7IERCR0JVU19EU1BQLCA4MywgNywgX2RwdV9kZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAt CXsgREJHQlVTX0RTUFAsIDkyLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDkyLCAyfSwKPiAtCXsg REJHQlVTX0RTUFAsIDkyLCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDkyLCA0fSwKPiAtCXsgREJH QlVTX0RTUFAsIDkyLCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDkyLCA2fSwKPiAtCXsgREJHQlVT X0RTUFAsIDkyLCA3LCBfZHB1X2RlYnVnX2J1c19sbV9kdW1wIH0sCj4gLQo+IC0JeyBEQkdCVVNf RFNQUCwgOTMsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgOTMsIDJ9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgOTMsIDN9LAo+IC0JeyBEQkdCVVNfRFNQUCwgOTMsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwg OTMsIDV9LAo+IC0JeyBEQkdCVVNfRFNQUCwgOTMsIDZ9LAo+IC0JeyBEQkdCVVNfRFNQUCwgOTMs IDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCA5NCwg MX0sCj4gLQl7IERCR0JVU19EU1BQLCA5NCwgMn0sCj4gLQl7IERCR0JVU19EU1BQLCA5NCwgM30s Cj4gLQl7IERCR0JVU19EU1BQLCA5NCwgNH0sCj4gLQl7IERCR0JVU19EU1BQLCA5NCwgNX0sCj4g LQl7IERCR0JVU19EU1BQLCA5NCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCA5NCwgNywgX2RwdV9k ZWJ1Z19idXNfbG1fZHVtcCB9LAo+IC0KPiAtCXsgREJHQlVTX0RTUFAsIDk1LCAxfSwKPiAtCXsg REJHQlVTX0RTUFAsIDk1LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDk1LCAzfSwKPiAtCXsgREJH QlVTX0RTUFAsIDk1LCA0fSwKPiAtCXsgREJHQlVTX0RTUFAsIDk1LCA1fSwKPiAtCXsgREJHQlVT X0RTUFAsIDk1LCA2fSwKPiAtCXsgREJHQlVTX0RTUFAsIDk1LCA3LCBfZHB1X2RlYnVnX2J1c19s bV9kdW1wIH0sCj4gLQo+IC0JLyogTE01ICovCj4gLQl7IERCR0JVU19EU1BQLCAxMTAsIDF9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgMTEwLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExMCwgM30sCj4g LQl7IERCR0JVU19EU1BQLCAxMTAsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTEwLCA1fSwKPiAt CXsgREJHQlVTX0RTUFAsIDExMCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTAsIDcsIF9kcHVf ZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTEsIDF9LAo+IC0J eyBEQkdCVVNfRFNQUCwgMTExLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExMSwgM30sCj4gLQl7 IERCR0JVU19EU1BQLCAxMTEsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTExLCA1fSwKPiAtCXsg REJHQlVTX0RTUFAsIDExMSwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTEsIDcsIF9kcHVfZGVi dWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTIsIDF9LAo+IC0JeyBE QkdCVVNfRFNQUCwgMTEyLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExMiwgM30sCj4gLQl7IERC R0JVU19EU1BQLCAxMTIsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTEyLCA1fSwKPiAtCXsgREJH QlVTX0RTUFAsIDExMiwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTIsIDcsIF9kcHVfZGVidWdf YnVzX2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTMsIDF9LAo+IC0JeyBEQkdC VVNfRFNQUCwgMTEzLCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExMywgM30sCj4gLQl7IERCR0JV U19EU1BQLCAxMTMsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTEzLCA1fSwKPiAtCXsgREJHQlVT X0RTUFAsIDExMywgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTMsIDcsIF9kcHVfZGVidWdfYnVz X2xtX2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTQsIDF9LAo+IC0JeyBEQkdCVVNf RFNQUCwgMTE0LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExNCwgM30sCj4gLQl7IERCR0JVU19E U1BQLCAxMTQsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE0LCA1fSwKPiAtCXsgREJHQlVTX0RT UFAsIDExNCwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTQsIDcsIF9kcHVfZGVidWdfYnVzX2xt X2R1bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTUsIDF9LAo+IC0JeyBEQkdCVVNfRFNQ UCwgMTE1LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExNSwgM30sCj4gLQl7IERCR0JVU19EU1BQ LCAxMTUsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE1LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAs IDExNSwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTUsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1 bXAgfSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTYsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwg MTE2LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExNiwgM30sCj4gLQl7IERCR0JVU19EU1BQLCAx MTYsIDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE2LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDEx NiwgNn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTYsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAg fSwKPiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTcsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE3 LCAyfSwKPiAtCXsgREJHQlVTX0RTUFAsIDExNywgM30sCj4gLQl7IERCR0JVU19EU1BQLCAxMTcs IDR9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE3LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDExNywg Nn0sCj4gLQl7IERCR0JVU19EU1BQLCAxMTcsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwK PiAtCj4gLQl7IERCR0JVU19EU1BQLCAxMTgsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE4LCAy fSwKPiAtCXsgREJHQlVTX0RTUFAsIDExOCwgM30sCj4gLQl7IERCR0JVU19EU1BQLCAxMTgsIDR9 LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE4LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDExOCwgNn0s Cj4gLQl7IERCR0JVU19EU1BQLCAxMTgsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAt Cj4gLQl7IERCR0JVU19EU1BQLCAxMTksIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTE5LCAyfSwK PiAtCXsgREJHQlVTX0RTUFAsIDExOSwgM30sCj4gLQl7IERCR0JVU19EU1BQLCAxMTksIDR9LAo+ IC0JeyBEQkdCVVNfRFNQUCwgMTE5LCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDExOSwgNn0sCj4g LQl7IERCR0JVU19EU1BQLCAxMTksIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4g LQl7IERCR0JVU19EU1BQLCAxMjAsIDF9LAo+IC0JeyBEQkdCVVNfRFNQUCwgMTIwLCAyfSwKPiAt CXsgREJHQlVTX0RTUFAsIDEyMCwgM30sCj4gLQl7IERCR0JVU19EU1BQLCAxMjAsIDR9LAo+IC0J eyBEQkdCVVNfRFNQUCwgMTIwLCA1fSwKPiAtCXsgREJHQlVTX0RTUFAsIDEyMCwgNn0sCj4gLQl7 IERCR0JVU19EU1BQLCAxMjAsIDcsIF9kcHVfZGVidWdfYnVzX2xtX2R1bXAgfSwKPiAtCj4gLQkv KiBjc2MgKi8KPiAtCXsgREJHQlVTX1NTUFAwLCA3LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAwLCA3 LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAyNywgMH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjcs IDF9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDcsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDcsIDF9 LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDI3LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyNywgMX0s Cj4gLQo+IC0JLyogcGNjICovCj4gLQl7IERCR0JVU19TU1BQMCwgMywgIDN9LAo+IC0JeyBEQkdC VVNfU1NQUDAsIDIzLCAzfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzMywgM30sCj4gLQl7IERCR0JV U19TU1BQMCwgNDMsIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDMsICAzfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAyMywgM30sCj4gLQl7IERCR0JVU19TU1BQMSwgMzMsIDN9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDQzLCAzfSwKPiAtCj4gLQkvKiBzcGEgKi8KPiAtCXsgREJHQlVTX1NTUFAwLCA4LCAg MH0sCj4gLQl7IERCR0JVU19TU1BQMCwgMjgsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDgsICAw fSwKPiAtCXsgREJHQlVTX1NTUFAxLCAyOCwgMH0sCj4gLQl7IERCR0JVU19EU1BQLCAxMywgMH0s Cj4gLQl7IERCR0JVU19EU1BQLCAxOSwgMH0sCj4gLQo+IC0JLyogaWdjICovCj4gLQl7IERCR0JV U19TU1BQMCwgMTcsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDE3LCAxfSwKPiAtCXsgREJHQlVT X1NTUFAwLCAxNywgM30sCj4gLQl7IERCR0JVU19TU1BQMCwgMzcsIDB9LAo+IC0JeyBEQkdCVVNf U1NQUDAsIDM3LCAxfSwKPiAtCXsgREJHQlVTX1NTUFAwLCAzNywgM30sCj4gLQl7IERCR0JVU19T U1BQMCwgNDYsIDB9LAo+IC0JeyBEQkdCVVNfU1NQUDAsIDQ2LCAxfSwKPiAtCXsgREJHQlVTX1NT UFAwLCA0NiwgM30sCj4gLQo+IC0JeyBEQkdCVVNfU1NQUDEsIDE3LCAwfSwKPiAtCXsgREJHQlVT X1NTUFAxLCAxNywgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgMTcsIDN9LAo+IC0JeyBEQkdCVVNf U1NQUDEsIDM3LCAwfSwKPiAtCXsgREJHQlVTX1NTUFAxLCAzNywgMX0sCj4gLQl7IERCR0JVU19T U1BQMSwgMzcsIDN9LAo+IC0JeyBEQkdCVVNfU1NQUDEsIDQ2LCAwfSwKPiAtCXsgREJHQlVTX1NT UFAxLCA0NiwgMX0sCj4gLQl7IERCR0JVU19TU1BQMSwgNDYsIDN9LAo+IC0KPiAtCXsgREJHQlVT X0RTUFAsIDE0LCAwfSwKPiAtCXsgREJHQlVTX0RTUFAsIDE0LCAxfSwKPiAtCXsgREJHQlVTX0RT UFAsIDE0LCAzfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAwfSwKPiAtCXsgREJHQlVTX0RTUFAs IDIwLCAxfSwKPiAtCXsgREJHQlVTX0RTUFAsIDIwLCAzfSwKPiAtCj4gLQkvKiBpbnRmMC0zICov Cj4gLQl7IERCR0JVU19QRVJJUEgsIDAsIDB9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCAxLCAwfSwK PiAtCXsgREJHQlVTX1BFUklQSCwgMiwgMH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDMsIDB9LAo+ IC0KPiAtCS8qIHRlIGNvdW50ZXIgd3JhcHBlciAqLwo+IC0JeyBEQkdCVVNfUEVSSVBILCA2MCwg MH0sCj4gLQo+IC0JLyogZHNjMCAqLwo+IC0JeyBEQkdCVVNfUEVSSVBILCA0NywgMH0sCj4gLQl7 IERCR0JVU19QRVJJUEgsIDQ3LCAxfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNDcsIDJ9LAo+IC0J eyBEQkdCVVNfUEVSSVBILCA0NywgM30sCj4gLQl7IERCR0JVU19QRVJJUEgsIDQ3LCA0fSwKPiAt CXsgREJHQlVTX1BFUklQSCwgNDcsIDV9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA0NywgNn0sCj4g LQl7IERCR0JVU19QRVJJUEgsIDQ3LCA3fSwKPiAtCj4gLQkvKiBkc2MxICovCj4gLQl7IERCR0JV U19QRVJJUEgsIDQ4LCAwfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNDgsIDF9LAo+IC0JeyBEQkdC VVNfUEVSSVBILCA0OCwgMn0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDQ4LCAzfSwKPiAtCXsgREJH QlVTX1BFUklQSCwgNDgsIDR9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA0OCwgNX0sCj4gLQl7IERC R0JVU19QRVJJUEgsIDQ4LCA2fSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNDgsIDd9LAo+IC0KPiAt CS8qIGRzYzIgKi8KPiAtCXsgREJHQlVTX1BFUklQSCwgNTEsIDB9LAo+IC0JeyBEQkdCVVNfUEVS SVBILCA1MSwgMX0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDUxLCAyfSwKPiAtCXsgREJHQlVTX1BF UklQSCwgNTEsIDN9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA1MSwgNH0sCj4gLQl7IERCR0JVU19Q RVJJUEgsIDUxLCA1fSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNTEsIDZ9LAo+IC0JeyBEQkdCVVNf UEVSSVBILCA1MSwgN30sCj4gLQo+IC0JLyogZHNjMyAqLwo+IC0JeyBEQkdCVVNfUEVSSVBILCA1 MiwgMH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDUyLCAxfSwKPiAtCXsgREJHQlVTX1BFUklQSCwg NTIsIDJ9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA1MiwgM30sCj4gLQl7IERCR0JVU19QRVJJUEgs IDUyLCA0fSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNTIsIDV9LAo+IC0JeyBEQkdCVVNfUEVSSVBI LCA1MiwgNn0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDUyLCA3fSwKPiAtCj4gLQkvKiB0ZWFyLWNo ZWNrICovCj4gLQl7IERCR0JVU19QRVJJUEgsIDYzLCAwIH0sCj4gLQl7IERCR0JVU19QRVJJUEgs IDY0LCAwIH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDY1LCAwIH0sCj4gLQl7IERCR0JVU19QRVJJ UEgsIDczLCAwIH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDc0LCAwIH0sCj4gLQo+IC0JLyogY2R3 biAqLwo+IC0JeyBEQkdCVVNfUEVSSVBILCA4MCwgMH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDgw LCAxfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgODAsIDJ9LAo+IC0KPiAtCXsgREJHQlVTX1BFUklQ SCwgODEsIDB9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA4MSwgMX0sCj4gLQl7IERCR0JVU19QRVJJ UEgsIDgxLCAyfSwKPiAtCj4gLQl7IERCR0JVU19QRVJJUEgsIDgyLCAwfSwKPiAtCXsgREJHQlVT X1BFUklQSCwgODIsIDF9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA4MiwgMn0sCj4gLQl7IERCR0JV U19QRVJJUEgsIDgyLCAzfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgODIsIDR9LAo+IC0JeyBEQkdC VVNfUEVSSVBILCA4MiwgNX0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDgyLCA2fSwKPiAtCXsgREJH QlVTX1BFUklQSCwgODIsIDd9LAo+IC0KPiAtCS8qIGhkbWkgKi8KPiAtCXsgREJHQlVTX1BFUklQ SCwgNjgsIDB9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA2OCwgMX0sCj4gLQl7IERCR0JVU19QRVJJ UEgsIDY4LCAyfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNjgsIDN9LAo+IC0JeyBEQkdCVVNfUEVS SVBILCA2OCwgNH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDY4LCA1fSwKPiAtCj4gLQkvKiBlZHAg Ki8KPiAtCXsgREJHQlVTX1BFUklQSCwgNjksIDB9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA2OSwg MX0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDY5LCAyfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNjks IDN9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA2OSwgNH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDY5 LCA1fSwKPiAtCj4gLQkvKiBkc2kwICovCj4gLQl7IERCR0JVU19QRVJJUEgsIDcwLCAwfSwKPiAt CXsgREJHQlVTX1BFUklQSCwgNzAsIDF9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA3MCwgMn0sCj4g LQl7IERCR0JVU19QRVJJUEgsIDcwLCAzfSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNzAsIDR9LAo+ IC0JeyBEQkdCVVNfUEVSSVBILCA3MCwgNX0sCj4gLQo+IC0JLyogZHNpMSAqLwo+IC0JeyBEQkdC VVNfUEVSSVBILCA3MSwgMH0sCj4gLQl7IERCR0JVU19QRVJJUEgsIDcxLCAxfSwKPiAtCXsgREJH QlVTX1BFUklQSCwgNzEsIDJ9LAo+IC0JeyBEQkdCVVNfUEVSSVBILCA3MSwgM30sCj4gLQl7IERC R0JVU19QRVJJUEgsIDcxLCA0fSwKPiAtCXsgREJHQlVTX1BFUklQSCwgNzEsIDV9LAo+IC19Owo+ IC0KPiAtc3RhdGljIHN0cnVjdCB2YmlmX2RlYnVnX2J1c19lbnRyeSB2YmlmX2RiZ19idXNfbXNt ODk5OFtdID0gewo+IC0JezB4MjE0LCAweDIxYywgMTYsIDIsIDB4MCwgMHhkfSwgICAgIC8qIGFy YiBjbGllbnRzICovCj4gLQl7MHgyMTQsIDB4MjFjLCAxNiwgMiwgMHg4MCwgMHhjMH0sICAgLyog YXJiIGNsaWVudHMgKi8KPiAtCXsweDIxNCwgMHgyMWMsIDE2LCAyLCAweDEwMCwgMHgxNDB9LCAv KiBhcmIgY2xpZW50cyAqLwo+IC0JezB4MjE0LCAweDIxYywgMCwgMTYsIDB4MCwgMHhmfSwgICAg IC8qIHhpbiBibG9ja3MgLSBheGkgc2lkZSAqLwo+IC0JezB4MjE0LCAweDIxYywgMCwgMTYsIDB4 ODAsIDB4YTR9LCAgIC8qIHhpbiBibG9ja3MgLSBheGkgc2lkZSAqLwo+IC0JezB4MjE0LCAweDIx YywgMCwgMTUsIDB4MTAwLCAweDEyNH0sIC8qIHhpbiBibG9ja3MgLSBheGkgc2lkZSAqLwo+IC0J ezB4MjFjLCAweDIxNCwgMCwgMTQsIDAsIDB4Y30sIC8qIHhpbiBibG9ja3MgLSBjbG9jayBzaWRl ICovCj4gLX07Cj4gLQo+IC0vKioKPiAtICogX2RwdV9kYmdfZW5hYmxlX3Bvd2VyIC0gdXNlIGNh bGxiYWNrIHRvIHR1cm4gcG93ZXIgb24gZm9yIGh3IHJlZ2lzdGVyIGFjY2Vzcwo+IC0gKiBAZW5h YmxlOiB3aGV0aGVyIHRvIHR1cm4gcG93ZXIgb24gb3Igb2ZmCj4gLSAqLwo+IC1zdGF0aWMgaW5s aW5lIHZvaWQgX2RwdV9kYmdfZW5hYmxlX3Bvd2VyKGludCBlbmFibGUpCj4gLXsKPiAtCWlmIChl bmFibGUpCj4gLQkJcG1fcnVudGltZV9nZXRfc3luYyhkcHVfZGJnX2Jhc2UuZGV2KTsKPiAtCWVs c2UKPiAtCQlwbV9ydW50aW1lX3B1dF9zeW5jKGRwdV9kYmdfYmFzZS5kZXYpOwo+IC19Cj4gLQo+ IC1zdGF0aWMgdm9pZCBfZHB1X2RiZ19kdW1wX2RwdV9kYmdfYnVzKHN0cnVjdCBkcHVfZGJnX2Rw dV9kZWJ1Z19idXMgKmJ1cykKPiAtewo+IC0JYm9vbCBpbl9sb2csIGluX21lbTsKPiAtCXUzMiAq KmR1bXBfbWVtID0gTlVMTDsKPiAtCXUzMiAqZHVtcF9hZGRyID0gTlVMTDsKPiAtCXUzMiBzdGF0 dXMgPSAwOwo+IC0Jc3RydWN0IGRwdV9kZWJ1Z19idXNfZW50cnkgKmhlYWQ7Cj4gLQlwaHlzX2Fk ZHJfdCBwaHlzID0gMDsKPiAtCWludCBsaXN0X3NpemU7Cj4gLQlpbnQgaTsKPiAtCXUzMiBvZmZz ZXQ7Cj4gLQl2b2lkIF9faW9tZW0gKm1lbV9iYXNlID0gTlVMTDsKPiAtCXN0cnVjdCBkcHVfZGJn X3JlZ19iYXNlICpyZWdfYmFzZTsKPiAtCj4gLQlpZiAoIWJ1cyB8fCAhYnVzLT5jbW4uZW50cmll c19zaXplKQo+IC0JCXJldHVybjsKPiAtCj4gLQlsaXN0X2Zvcl9lYWNoX2VudHJ5KHJlZ19iYXNl LCAmZHB1X2RiZ19iYXNlLnJlZ19iYXNlX2xpc3QsCj4gLQkJCXJlZ19iYXNlX2hlYWQpCj4gLQkJ aWYgKHN0cmxlbihyZWdfYmFzZS0+bmFtZSkgJiYKPiAtCQkJIXN0cmNtcChyZWdfYmFzZS0+bmFt ZSwgYnVzLT5jbW4ubmFtZSkpCj4gLQkJCW1lbV9iYXNlID0gcmVnX2Jhc2UtPmJhc2UgKyBidXMt PnRvcF9ibGtfb2ZmOwo+IC0KPiAtCWlmICghbWVtX2Jhc2UpIHsKPiAtCQlwcl9lcnIoInVuYWJs ZSB0byBmaW5kIG1lbV9iYXNlIGZvciAlc1xuIiwgYnVzLT5jbW4ubmFtZSk7Cj4gLQkJcmV0dXJu Owo+IC0JfQo+IC0KPiAtCWR1bXBfbWVtID0gJmJ1cy0+Y21uLmR1bXBlZF9jb250ZW50Owo+IC0K PiAtCS8qIHdpbGwga2VlcCBpbiBtZW1vcnkgNCBlbnRyaWVzIG9mIDQgYnl0ZXMgZWFjaCAqLwo+ IC0JbGlzdF9zaXplID0gKGJ1cy0+Y21uLmVudHJpZXNfc2l6ZSAqIDQgKiA0KTsKPiAtCj4gLQlp bl9sb2cgPSAoYnVzLT5jbW4uZW5hYmxlX21hc2sgJiBEUFVfREJHX0RVTVBfSU5fTE9HKTsKPiAt CWluX21lbSA9IChidXMtPmNtbi5lbmFibGVfbWFzayAmIERQVV9EQkdfRFVNUF9JTl9NRU0pOwo+ IC0KPiAtCWlmICghaW5fbG9nICYmICFpbl9tZW0pCj4gLQkJcmV0dXJuOwo+IC0KPiAtCURSTV9E RVZfSU5GTyhkcHVfZGJnX2Jhc2UuZGV2LCAiPT09PT09PT0gc3RhcnQgJXMgZHVtcCA9PT09PT09 PT1cbiIsCj4gLQkJCWJ1cy0+Y21uLm5hbWUpOwo+IC0KPiAtCWlmIChpbl9tZW0pIHsKPiAtCQlp ZiAoISgqZHVtcF9tZW0pKQo+IC0JCQkqZHVtcF9tZW0gPSBkbWFfYWxsb2NfY29oZXJlbnQoZHB1 X2RiZ19iYXNlLmRldiwKPiAtCQkJCWxpc3Rfc2l6ZSwgJnBoeXMsIEdGUF9LRVJORUwpOwo+IC0K PiAtCQlpZiAoKmR1bXBfbWVtKSB7Cj4gLQkJCWR1bXBfYWRkciA9ICpkdW1wX21lbTsKPiAtCQkJ RFJNX0RFVl9JTkZPKGRwdV9kYmdfYmFzZS5kZXYsCj4gLQkJCQkiJXM6IHN0YXJ0X2FkZHI6MHgl cEsgbGVuOjB4JXhcbiIsCj4gLQkJCQlfX2Z1bmNfXywgZHVtcF9hZGRyLCBsaXN0X3NpemUpOwo+ IC0JCX0gZWxzZSB7Cj4gLQkJCWluX21lbSA9IGZhbHNlOwo+IC0JCQlwcl9lcnIoImR1bXBfbWVt OiBhbGxvY2F0aW9uIGZhaWxzXG4iKTsKPiAtCQl9Cj4gLQl9Cj4gLQo+IC0JX2RwdV9kYmdfZW5h YmxlX3Bvd2VyKHRydWUpOwo+IC0JZm9yIChpID0gMDsgaSA8IGJ1cy0+Y21uLmVudHJpZXNfc2l6 ZTsgaSsrKSB7Cj4gLQkJaGVhZCA9IGJ1cy0+ZW50cmllcyArIGk7Cj4gLQkJd3JpdGVsX3JlbGF4 ZWQoVEVTVF9NQVNLKGhlYWQtPmJsb2NrX2lkLCBoZWFkLT50ZXN0X2lkKSwKPiAtCQkJCW1lbV9i YXNlICsgaGVhZC0+d3JfYWRkcik7Cj4gLQkJd21iKCk7IC8qIG1ha2Ugc3VyZSB0ZXN0IGJpdHMg d2VyZSB3cml0dGVuICovCj4gLQo+IC0JCWlmIChidXMtPmNtbi5mbGFncyAmIERCR0JVU19GTEFH U19EU1BQKSB7Cj4gLQkJCW9mZnNldCA9IERCR0JVU19EU1BQX1NUQVRVUzsKPiAtCQkJLyoga2Vl cCBEU1BQIHRlc3QgcG9pbnQgZW5hYmxlZCAqLwo+IC0JCQlpZiAoaGVhZC0+d3JfYWRkciAhPSBE QkdCVVNfRFNQUCkKPiAtCQkJCXdyaXRlbF9yZWxheGVkKDB4RiwgbWVtX2Jhc2UgKyBEQkdCVVNf RFNQUCk7Cj4gLQkJfSBlbHNlIHsKPiAtCQkJb2Zmc2V0ID0gaGVhZC0+d3JfYWRkciArIDB4NDsK PiAtCQl9Cj4gLQo+IC0JCXN0YXR1cyA9IHJlYWRsX3JlbGF4ZWQobWVtX2Jhc2UgKyBvZmZzZXQp Owo+IC0KPiAtCQlpZiAoaW5fbG9nKQo+IC0JCQlEUk1fREVWX0lORk8oZHB1X2RiZ19iYXNlLmRl diwKPiAtCQkJCQkid2FkZHI9MHgleCBibGs9JWQgdHN0PSVkIHZhbD0weCV4XG4iLAo+IC0JCQkJ CWhlYWQtPndyX2FkZHIsIGhlYWQtPmJsb2NrX2lkLAo+IC0JCQkJCWhlYWQtPnRlc3RfaWQsIHN0 YXR1cyk7Cj4gLQo+IC0JCWlmIChkdW1wX2FkZHIgJiYgaW5fbWVtKSB7Cj4gLQkJCWR1bXBfYWRk cltpKjRdICAgICA9IGhlYWQtPndyX2FkZHI7Cj4gLQkJCWR1bXBfYWRkcltpKjQgKyAxXSA9IGhl YWQtPmJsb2NrX2lkOwo+IC0JCQlkdW1wX2FkZHJbaSo0ICsgMl0gPSBoZWFkLT50ZXN0X2lkOwo+ IC0JCQlkdW1wX2FkZHJbaSo0ICsgM10gPSBzdGF0dXM7Cj4gLQkJfQo+IC0KPiAtCQlpZiAoaGVh ZC0+YW5hbHl6ZXIpCj4gLQkJCWhlYWQtPmFuYWx5emVyKG1lbV9iYXNlLCBoZWFkLCBzdGF0dXMp Owo+IC0KPiAtCQkvKiBEaXNhYmxlIGRlYnVnIGJ1cyBvbmNlIHdlIGFyZSBkb25lICovCj4gLQkJ d3JpdGVsX3JlbGF4ZWQoMCwgbWVtX2Jhc2UgKyBoZWFkLT53cl9hZGRyKTsKPiAtCQlpZiAoYnVz LT5jbW4uZmxhZ3MgJiBEQkdCVVNfRkxBR1NfRFNQUCAmJgo+IC0JCQkJCQloZWFkLT53cl9hZGRy ICE9IERCR0JVU19EU1BQKQo+IC0JCQl3cml0ZWxfcmVsYXhlZCgweDAsIG1lbV9iYXNlICsgREJH QlVTX0RTUFApOwo+IC0JfQo+IC0JX2RwdV9kYmdfZW5hYmxlX3Bvd2VyKGZhbHNlKTsKPiAtCj4g LQlEUk1fREVWX0lORk8oZHB1X2RiZ19iYXNlLmRldiwgIj09PT09PT09IGVuZCAlcyBkdW1wID09 PT09PT09PVxuIiwKPiAtCQkJYnVzLT5jbW4ubmFtZSk7Cj4gLX0KPiAtCj4gLXN0YXRpYyB2b2lk IF9kcHVfZGJnX2R1bXBfdmJpZl9kZWJ1Z19idXNfZW50cnkoCj4gLQkJc3RydWN0IHZiaWZfZGVi dWdfYnVzX2VudHJ5ICpoZWFkLCB2b2lkIF9faW9tZW0gKm1lbV9iYXNlLAo+IC0JCXUzMiAqZHVt cF9hZGRyLCBib29sIGluX2xvZykKPiAtewo+IC0JaW50IGksIGo7Cj4gLQl1MzIgdmFsOwo+IC0K PiAtCWlmICghZHVtcF9hZGRyICYmICFpbl9sb2cpCj4gLQkJcmV0dXJuOwo+IC0KPiAtCWZvciAo aSA9IDA7IGkgPCBoZWFkLT5ibG9ja19jbnQ7IGkrKykgewo+IC0JCXdyaXRlbF9yZWxheGVkKDEg PDwgKGkgKyBoZWFkLT5iaXRfb2Zmc2V0KSwKPiAtCQkJCW1lbV9iYXNlICsgaGVhZC0+YmxvY2tf YnVzX2FkZHIpOwo+IC0JCS8qIG1ha2Ugc3VyZSB0aGF0IGN1cnJlbnQgYnVzIGJsY29rIGVuYWJs ZSAqLwo+IC0JCXdtYigpOwo+IC0JCWZvciAoaiA9IGhlYWQtPnRlc3RfcG50X3N0YXJ0OyBqIDwg aGVhZC0+dGVzdF9wbnRfY250OyBqKyspIHsKPiAtCQkJd3JpdGVsX3JlbGF4ZWQoaiwgbWVtX2Jh c2UgKyBoZWFkLT5ibG9ja19idXNfYWRkciArIDQpOwo+IC0JCQkvKiBtYWtlIHN1cmUgdGhhdCB0 ZXN0IHBvaW50IGlzIGVuYWJsZWQgKi8KPiAtCQkJd21iKCk7Cj4gLQkJCXZhbCA9IHJlYWRsX3Jl bGF4ZWQobWVtX2Jhc2UgKyBNTVNTX1ZCSUZfVEVTVF9CVVNfT1VUKTsKPiAtCQkJaWYgKGR1bXBf YWRkcikgewo+IC0JCQkJKmR1bXBfYWRkcisrID0gaGVhZC0+YmxvY2tfYnVzX2FkZHI7Cj4gLQkJ CQkqZHVtcF9hZGRyKysgPSBpOwo+IC0JCQkJKmR1bXBfYWRkcisrID0gajsKPiAtCQkJCSpkdW1w X2FkZHIrKyA9IHZhbDsKPiAtCQkJfQo+IC0JCQlpZiAoaW5fbG9nKQo+IC0JCQkJRFJNX0RFVl9J TkZPKGRwdV9kYmdfYmFzZS5kZXYsCj4gLQkJCQkJInRlc3Rwb2ludDoleCBhcmIveGluIGlkPSVk IGluZGV4PSVkIHZhbD0weCV4XG4iLAo+IC0JCQkJCWhlYWQtPmJsb2NrX2J1c19hZGRyLCBpLCBq LCB2YWwpOwo+IC0JCX0KPiAtCX0KPiAtfQo+IC0KPiAtc3RhdGljIHZvaWQgX2RwdV9kYmdfZHVt cF92YmlmX2RiZ19idXMoc3RydWN0IGRwdV9kYmdfdmJpZl9kZWJ1Z19idXMgKmJ1cykKPiAtewo+ IC0JYm9vbCBpbl9sb2csIGluX21lbTsKPiAtCXUzMiAqKmR1bXBfbWVtID0gTlVMTDsKPiAtCXUz MiAqZHVtcF9hZGRyID0gTlVMTDsKPiAtCXUzMiB2YWx1ZSwgZDAsIGQxOwo+IC0JdW5zaWduZWQg bG9uZyByZWcsIHJlZzEsIHJlZzI7Cj4gLQlzdHJ1Y3QgdmJpZl9kZWJ1Z19idXNfZW50cnkgKmhl YWQ7Cj4gLQlwaHlzX2FkZHJfdCBwaHlzID0gMDsKPiAtCWludCBpLCBsaXN0X3NpemUgPSAwOwo+ IC0Jdm9pZCBfX2lvbWVtICptZW1fYmFzZSA9IE5VTEw7Cj4gLQlzdHJ1Y3QgdmJpZl9kZWJ1Z19i dXNfZW50cnkgKmRiZ19idXM7Cj4gLQl1MzIgYnVzX3NpemU7Cj4gLQlzdHJ1Y3QgZHB1X2RiZ19y ZWdfYmFzZSAqcmVnX2Jhc2U7Cj4gLQo+IC0JaWYgKCFidXMgfHwgIWJ1cy0+Y21uLmVudHJpZXNf c2l6ZSkKPiAtCQlyZXR1cm47Cj4gLQo+IC0JbGlzdF9mb3JfZWFjaF9lbnRyeShyZWdfYmFzZSwg JmRwdV9kYmdfYmFzZS5yZWdfYmFzZV9saXN0LAo+IC0JCQlyZWdfYmFzZV9oZWFkKQo+IC0JCWlm IChzdHJsZW4ocmVnX2Jhc2UtPm5hbWUpICYmCj4gLQkJCSFzdHJjbXAocmVnX2Jhc2UtPm5hbWUs IGJ1cy0+Y21uLm5hbWUpKQo+IC0JCQltZW1fYmFzZSA9IHJlZ19iYXNlLT5iYXNlOwo+IC0KPiAt CWlmICghbWVtX2Jhc2UpIHsKPiAtCQlwcl9lcnIoInVuYWJsZSB0byBmaW5kIG1lbV9iYXNlIGZv ciAlc1xuIiwgYnVzLT5jbW4ubmFtZSk7Cj4gLQkJcmV0dXJuOwo+IC0JfQo+IC0KPiAtCWRiZ19i dXMgPSBidXMtPmVudHJpZXM7Cj4gLQlidXNfc2l6ZSA9IGJ1cy0+Y21uLmVudHJpZXNfc2l6ZTsK PiAtCWxpc3Rfc2l6ZSA9IGJ1cy0+Y21uLmVudHJpZXNfc2l6ZTsKPiAtCWR1bXBfbWVtID0gJmJ1 cy0+Y21uLmR1bXBlZF9jb250ZW50Owo+IC0KPiAtCURSTV9ERVZfSU5GTyhkcHVfZGJnX2Jhc2Uu ZGV2LCAiPT09PT09PT0gc3RhcnQgJXMgZHVtcCA9PT09PT09PT1cbiIsCj4gLQkJCWJ1cy0+Y21u Lm5hbWUpOwo+IC0KPiAtCWlmICghZHVtcF9tZW0gfHwgIWRiZ19idXMgfHwgIWJ1c19zaXplIHx8 ICFsaXN0X3NpemUpCj4gLQkJcmV0dXJuOwo+IC0KPiAtCS8qIGFsbG9jYXRlIG1lbW9yeSBmb3Ig ZWFjaCB0ZXN0IHBvaW50ICovCj4gLQlmb3IgKGkgPSAwOyBpIDwgYnVzX3NpemU7IGkrKykgewo+ IC0JCWhlYWQgPSBkYmdfYnVzICsgaTsKPiAtCQlsaXN0X3NpemUgKz0gKGhlYWQtPmJsb2NrX2Nu dCAqIGhlYWQtPnRlc3RfcG50X2NudCk7Cj4gLQl9Cj4gLQo+IC0JLyogNCBieXRlcyAqIDQgZW50 cmllcyBmb3IgZWFjaCB0ZXN0IHBvaW50Ki8KPiAtCWxpc3Rfc2l6ZSAqPSAxNjsKPiAtCj4gLQlp bl9sb2cgPSAoYnVzLT5jbW4uZW5hYmxlX21hc2sgJiBEUFVfREJHX0RVTVBfSU5fTE9HKTsKPiAt CWluX21lbSA9IChidXMtPmNtbi5lbmFibGVfbWFzayAmIERQVV9EQkdfRFVNUF9JTl9NRU0pOwo+ IC0KPiAtCWlmICghaW5fbG9nICYmICFpbl9tZW0pCj4gLQkJcmV0dXJuOwo+IC0KPiAtCWlmIChp bl9tZW0pIHsKPiAtCQlpZiAoISgqZHVtcF9tZW0pKQo+IC0JCQkqZHVtcF9tZW0gPSBkbWFfYWxs b2NfY29oZXJlbnQoZHB1X2RiZ19iYXNlLmRldiwKPiAtCQkJCWxpc3Rfc2l6ZSwgJnBoeXMsIEdG UF9LRVJORUwpOwo+IC0KPiAtCQlpZiAoKmR1bXBfbWVtKSB7Cj4gLQkJCWR1bXBfYWRkciA9ICpk dW1wX21lbTsKPiAtCQkJRFJNX0RFVl9JTkZPKGRwdV9kYmdfYmFzZS5kZXYsCj4gLQkJCQkiJXM6 IHN0YXJ0X2FkZHI6MHglcEsgbGVuOjB4JXhcbiIsCj4gLQkJCQlfX2Z1bmNfXywgZHVtcF9hZGRy LCBsaXN0X3NpemUpOwo+IC0JCX0gZWxzZSB7Cj4gLQkJCWluX21lbSA9IGZhbHNlOwo+IC0JCQlw cl9lcnIoImR1bXBfbWVtOiBhbGxvY2F0aW9uIGZhaWxzXG4iKTsKPiAtCQl9Cj4gLQl9Cj4gLQo+ IC0JX2RwdV9kYmdfZW5hYmxlX3Bvd2VyKHRydWUpOwo+IC0KPiAtCXZhbHVlID0gcmVhZGxfcmVs YXhlZChtZW1fYmFzZSArIE1NU1NfVkJJRl9DTEtPTik7Cj4gLQl3cml0ZWxfcmVsYXhlZCh2YWx1 ZSB8IEJJVCgxKSwgbWVtX2Jhc2UgKyBNTVNTX1ZCSUZfQ0xLT04pOwo+IC0KPiAtCS8qIG1ha2Ug c3VyZSB0aGF0IHZiaWYgY29yZSBpcyBvbiAqLwo+IC0Jd21iKCk7Cj4gLQo+IC0JLyoqCj4gLQkg KiBFeHRyYWN0IFZCSUYgZXJyb3IgaW5mbyBiYXNlZCBvbiBYSU4gaGFsdCBhbmQgZXJyb3Igc3Rh dHVzLgo+IC0JICogSWYgdGhlIFhJTiBjbGllbnQgaXMgbm90IGluIEhBTFQgc3RhdGUsIG9yIGFu IGVycm9yIGlzIGRldGVjdGVkLAo+IC0JICogdGhlbiByZXRyaWV2ZSB0aGUgVkJJRiBlcnJvciBp bmZvIGZvciBpdC4KPiAtCSAqLwo+IC0JcmVnID0gcmVhZGxfcmVsYXhlZChtZW1fYmFzZSArIE1N U1NfVkJJRl9YSU5fSEFMVF9DVFJMMSk7Cj4gLQlyZWcxID0gcmVhZGxfcmVsYXhlZChtZW1fYmFz ZSArIE1NU1NfVkJJRl9QTkRfRVJSKTsKPiAtCXJlZzIgPSByZWFkbF9yZWxheGVkKG1lbV9iYXNl ICsgTU1TU19WQklGX1NSQ19FUlIpOwo+IC0JRFJNX0RFVl9FUlJPUihkcHVfZGJnX2Jhc2UuZGV2 LAo+IC0JCQkiWElOIEhBTFQ6MHglbFgsIFBORCBFUlI6MHglbFgsIFNSQyBFUlI6MHglbFhcbiIs Cj4gLQkJCXJlZywgcmVnMSwgcmVnMik7Cj4gLQlyZWcgPj49IDE2Owo+IC0JcmVnICY9IH4ocmVn MSB8IHJlZzIpOwo+IC0JZm9yIChpID0gMDsgaSA8IE1NU1NfVkJJRl9DTElFTlRfTlVNOyBpKysp IHsKPiAtCQlpZiAoIXRlc3RfYml0KDAsICZyZWcpKSB7Cj4gLQkJCXdyaXRlbF9yZWxheGVkKGks IG1lbV9iYXNlICsgTU1TU19WQklGX0VSUl9JTkZPKTsKPiAtCQkJLyogbWFrZSBzdXJlIHJlZyB3 cml0ZSBnb2VzIHRocm91Z2ggKi8KPiAtCQkJd21iKCk7Cj4gLQo+IC0JCQlkMCA9IHJlYWRsX3Jl bGF4ZWQobWVtX2Jhc2UgKyBNTVNTX1ZCSUZfRVJSX0lORk8pOwo+IC0JCQlkMSA9IHJlYWRsX3Jl bGF4ZWQobWVtX2Jhc2UgKyBNTVNTX1ZCSUZfRVJSX0lORk9fMSk7Cj4gLQo+IC0JCQlEUk1fREVW X0VSUk9SKGRwdV9kYmdfYmFzZS5kZXYsCj4gLQkJCQkJIkNsaWVudDolZCwgZXJyaW5mbz0weCVY LCBlcnJpbmZvMT0weCVYXG4iLAo+IC0JCQkJCWksIGQwLCBkMSk7Cj4gLQkJfQo+IC0JCXJlZyA+ Pj0gMTsKPiAtCX0KPiAtCj4gLQlmb3IgKGkgPSAwOyBpIDwgYnVzX3NpemU7IGkrKykgewo+IC0J CWhlYWQgPSBkYmdfYnVzICsgaTsKPiAtCj4gLQkJd3JpdGVsX3JlbGF4ZWQoMCwgbWVtX2Jhc2Ug KyBoZWFkLT5kaXNhYmxlX2J1c19hZGRyKTsKPiAtCQl3cml0ZWxfcmVsYXhlZChCSVQoMCksIG1l bV9iYXNlICsgTU1TU19WQklGX1RFU1RfQlVTX09VVF9DVFJMKTsKPiAtCQkvKiBtYWtlIHN1cmUg dGhhdCBvdGhlciBidXMgaXMgb2ZmICovCj4gLQkJd21iKCk7Cj4gLQo+IC0JCV9kcHVfZGJnX2R1 bXBfdmJpZl9kZWJ1Z19idXNfZW50cnkoaGVhZCwgbWVtX2Jhc2UsIGR1bXBfYWRkciwKPiAtCQkJ CWluX2xvZyk7Cj4gLQkJaWYgKGR1bXBfYWRkcikKPiAtCQkJZHVtcF9hZGRyICs9IChoZWFkLT5i bG9ja19jbnQgKiBoZWFkLT50ZXN0X3BudF9jbnQgKiA0KTsKPiAtCX0KPiAtCj4gLQlfZHB1X2Ri Z19lbmFibGVfcG93ZXIoZmFsc2UpOwo+IC0KPiAtCURSTV9ERVZfSU5GTyhkcHVfZGJnX2Jhc2Uu ZGV2LCAiPT09PT09PT0gZW5kICVzIGR1bXAgPT09PT09PT09XG4iLAo+IC0JCQlidXMtPmNtbi5u YW1lKTsKPiAtfQo+IC0KPiAtLyoqCj4gLSAqIF9kcHVfZHVtcF9hcnJheSAtIGR1bXAgYXJyYXkg b2YgcmVnaXN0ZXIgYmFzZXMKPiAtICogQG5hbWU6IHN0cmluZyBpbmRpY2F0aW5nIG9yaWdpbiBv ZiBkdW1wCj4gLSAqIEBkdW1wX2RiZ2J1c19kcHU6IHdoZXRoZXIgdG8gZHVtcCB0aGUgZHB1IGRl YnVnIGJ1cwo+IC0gKiBAZHVtcF9kYmdidXNfdmJpZl9ydDogd2hldGhlciB0byBkdW1wIHRoZSB2 YmlmIHJ0IGRlYnVnIGJ1cwo+IC0gKi8KPiAtc3RhdGljIHZvaWQgX2RwdV9kdW1wX2FycmF5KGNv bnN0IGNoYXIgKm5hbWUsIGJvb2wgZHVtcF9kYmdidXNfZHB1LAo+IC0JCQkgICAgYm9vbCBkdW1w X2RiZ2J1c192YmlmX3J0KQo+IC17Cj4gLQlpZiAoZHVtcF9kYmdidXNfZHB1KQo+IC0JCV9kcHVf ZGJnX2R1bXBfZHB1X2RiZ19idXMoJmRwdV9kYmdfYmFzZS5kYmdidXNfZHB1KTsKPiAtCj4gLQlp ZiAoZHVtcF9kYmdidXNfdmJpZl9ydCkKPiAtCQlfZHB1X2RiZ19kdW1wX3ZiaWZfZGJnX2J1cygm ZHB1X2RiZ19iYXNlLmRiZ2J1c192YmlmX3J0KTsKPiAtfQo+IC0KPiAtLyoqCj4gLSAqIF9kcHVf ZHVtcF93b3JrIC0gZGVmZXJyZWQgZHVtcCB3b3JrIGZ1bmN0aW9uCj4gLSAqIEB3b3JrOiB3b3Jr IHN0cnVjdHVyZQo+IC0gKi8KPiAtc3RhdGljIHZvaWQgX2RwdV9kdW1wX3dvcmsoc3RydWN0IHdv cmtfc3RydWN0ICp3b3JrKQo+IC17Cj4gLQlfZHB1X2R1bXBfYXJyYXkoImRwdWR1bXBfd29ya2l0 ZW0iLAo+IC0JCWRwdV9kYmdfYmFzZS5kYmdidXNfZHB1LmNtbi5pbmNsdWRlX2luX2RlZmVycmVk X3dvcmssCj4gLQkJZHB1X2RiZ19iYXNlLmRiZ2J1c192YmlmX3J0LmNtbi5pbmNsdWRlX2luX2Rl ZmVycmVkX3dvcmspOwo+IC19Cj4gLQo+IC12b2lkIGRwdV9kYmdfZHVtcChib29sIHF1ZXVlX3dv cmssIGNvbnN0IGNoYXIgKm5hbWUsIGJvb2wgZHVtcF9kYmdidXNfZHB1LAo+IC0JCSAgYm9vbCBk dW1wX2RiZ2J1c192YmlmX3J0KQo+IC17Cj4gLQlpZiAocXVldWVfd29yayAmJiB3b3JrX3BlbmRp bmcoJmRwdV9kYmdfYmFzZS5kdW1wX3dvcmspKQo+IC0JCXJldHVybjsKPiAtCj4gLQlpZiAoIXF1 ZXVlX3dvcmspIHsKPiAtCQlfZHB1X2R1bXBfYXJyYXkobmFtZSwgZHVtcF9kYmdidXNfZHB1LCBk dW1wX2RiZ2J1c192YmlmX3J0KTsKPiAtCQlyZXR1cm47Cj4gLQl9Cj4gLQo+IC0JLyogc2NoZWR1 bGUgd29yayB0byBkdW1wIGxhdGVyICovCj4gLQlkcHVfZGJnX2Jhc2UuZGJnYnVzX2RwdS5jbW4u aW5jbHVkZV9pbl9kZWZlcnJlZF93b3JrID0gZHVtcF9kYmdidXNfZHB1Owo+IC0JZHB1X2RiZ19i YXNlLmRiZ2J1c192YmlmX3J0LmNtbi5pbmNsdWRlX2luX2RlZmVycmVkX3dvcmsgPQo+IC0JCQlk dW1wX2RiZ2J1c192YmlmX3J0Owo+IC0Jc2NoZWR1bGVfd29yaygmZHB1X2RiZ19iYXNlLmR1bXBf d29yayk7Cj4gLX0KPiAtCj4gLS8qCj4gLSAqIGRwdV9kYmdfZGVidWdmc19vcGVuIC0gZGVidWdm cyBvcGVuIGhhbmRsZXIgZm9yIGRlYnVnIGR1bXAKPiAtICogQGlub2RlOiBkZWJ1Z2ZzIGlub2Rl Cj4gLSAqIEBmaWxlOiBmaWxlIGhhbmRsZQo+IC0gKi8KPiAtc3RhdGljIGludCBkcHVfZGJnX2Rl YnVnZnNfb3BlbihzdHJ1Y3QgaW5vZGUgKmlub2RlLCBzdHJ1Y3QgZmlsZSAqZmlsZSkKPiAtewo+ IC0JLyogbm9uLXNlZWthYmxlICovCj4gLQlmaWxlLT5mX21vZGUgJj0gfihGTU9ERV9MU0VFSyB8 IEZNT0RFX1BSRUFEIHwgRk1PREVfUFdSSVRFKTsKPiAtCWZpbGUtPnByaXZhdGVfZGF0YSA9IGlu b2RlLT5pX3ByaXZhdGU7Cj4gLQlyZXR1cm4gMDsKPiAtfQo+IC0KPiAtLyoqCj4gLSAqIGRwdV9k YmdfZHVtcF93cml0ZSAtIGRlYnVnZnMgd3JpdGUgaGFuZGxlciBmb3IgZGVidWcgZHVtcAo+IC0g KiBAZmlsZTogZmlsZSBoYW5kbGVyCj4gLSAqIEB1c2VyX2J1ZjogdXNlciBidWZmZXIgY29udGVu dCBmcm9tIGRlYnVnZnMKPiAtICogQGNvdW50OiBzaXplIG9mIHVzZXIgYnVmZmVyCj4gLSAqIEBw cG9zOiBwb3NpdGlvbiBvZmZzZXQgb2YgdXNlciBidWZmZXIKPiAtICovCj4gLXN0YXRpYyBzc2l6 ZV90IGRwdV9kYmdfZHVtcF93cml0ZShzdHJ1Y3QgZmlsZSAqZmlsZSwKPiAtCWNvbnN0IGNoYXIg X191c2VyICp1c2VyX2J1Ziwgc2l6ZV90IGNvdW50LCBsb2ZmX3QgKnBwb3MpCj4gLXsKPiAtCV9k cHVfZHVtcF9hcnJheSgiZHVtcF9kZWJ1Z2ZzIiwgdHJ1ZSwgdHJ1ZSk7Cj4gLQlyZXR1cm4gY291 bnQ7Cj4gLX0KPiAtCj4gLXN0YXRpYyBjb25zdCBzdHJ1Y3QgZmlsZV9vcGVyYXRpb25zIGRwdV9k YmdfZHVtcF9mb3BzID0gewo+IC0JLm9wZW4gPSBkcHVfZGJnX2RlYnVnZnNfb3BlbiwKPiAtCS53 cml0ZSA9IGRwdV9kYmdfZHVtcF93cml0ZSwKPiAtfTsKPiAtCj4gLWludCBkcHVfZGJnX2RlYnVn ZnNfcmVnaXN0ZXIoc3RydWN0IGRlbnRyeSAqZGVidWdmc19yb290KQo+IC17Cj4gLQlzdGF0aWMg c3RydWN0IGRwdV9kYmdfYmFzZSAqZGJnID0gJmRwdV9kYmdfYmFzZTsKPiAtCWNoYXIgZGVidWdf bmFtZVs4MF0gPSAiIjsKPiAtCj4gLQlpZiAoIWRlYnVnZnNfcm9vdCkKPiAtCQlyZXR1cm4gLUVJ TlZBTDsKPiAtCj4gLQlkZWJ1Z2ZzX2NyZWF0ZV9maWxlKCJkdW1wIiwgMDYwMCwgZGVidWdmc19y b290LCBOVUxMLAo+IC0JCQkmZHB1X2RiZ19kdW1wX2ZvcHMpOwo+IC0KPiAtCWlmIChkYmctPmRi Z2J1c19kcHUuZW50cmllcykgewo+IC0JCWRiZy0+ZGJnYnVzX2RwdS5jbW4ubmFtZSA9IERCR0JV U19OQU1FX0RQVTsKPiAtCQlzbnByaW50ZihkZWJ1Z19uYW1lLCBzaXplb2YoZGVidWdfbmFtZSks ICIlc19kYmdidXMiLAo+IC0JCQkJZGJnLT5kYmdidXNfZHB1LmNtbi5uYW1lKTsKPiAtCQlkYmct PmRiZ2J1c19kcHUuY21uLmVuYWJsZV9tYXNrID0gREVGQVVMVF9EQkdCVVNfRFBVOwo+IC0JCWRl YnVnZnNfY3JlYXRlX3UzMihkZWJ1Z19uYW1lLCAwNjAwLCBkZWJ1Z2ZzX3Jvb3QsCj4gLQkJCQkm ZGJnLT5kYmdidXNfZHB1LmNtbi5lbmFibGVfbWFzayk7Cj4gLQl9Cj4gLQo+IC0JaWYgKGRiZy0+ ZGJnYnVzX3ZiaWZfcnQuZW50cmllcykgewo+IC0JCWRiZy0+ZGJnYnVzX3ZiaWZfcnQuY21uLm5h bWUgPSBEQkdCVVNfTkFNRV9WQklGX1JUOwo+IC0JCXNucHJpbnRmKGRlYnVnX25hbWUsIHNpemVv ZihkZWJ1Z19uYW1lKSwgIiVzX2RiZ2J1cyIsCj4gLQkJCQlkYmctPmRiZ2J1c192YmlmX3J0LmNt bi5uYW1lKTsKPiAtCQlkYmctPmRiZ2J1c192YmlmX3J0LmNtbi5lbmFibGVfbWFzayA9IERFRkFV TFRfREJHQlVTX1ZCSUZSVDsKPiAtCQlkZWJ1Z2ZzX2NyZWF0ZV91MzIoZGVidWdfbmFtZSwgMDYw MCwgZGVidWdmc19yb290LAo+IC0JCQkJJmRiZy0+ZGJnYnVzX3ZiaWZfcnQuY21uLmVuYWJsZV9t YXNrKTsKPiAtCX0KPiAtCj4gLQlyZXR1cm4gMDsKPiAtfQo+IC0KPiAtc3RhdGljIHZvaWQgX2Rw dV9kYmdfZGVidWdmc19kZXN0cm95KHZvaWQpCj4gLXsKPiAtfQo+IC0KPiAtdm9pZCBkcHVfZGJn X2luaXRfZGJnX2J1c2VzKHUzMiBod3ZlcnNpb24pCj4gLXsKPiAtCXN0YXRpYyBzdHJ1Y3QgZHB1 X2RiZ19iYXNlICpkYmcgPSAmZHB1X2RiZ19iYXNlOwo+IC0KPiAtCW1lbXNldCgmZGJnLT5kYmdi dXNfZHB1LCAwLCBzaXplb2YoZGJnLT5kYmdidXNfZHB1KSk7Cj4gLQltZW1zZXQoJmRiZy0+ZGJn YnVzX3ZiaWZfcnQsIDAsIHNpemVvZihkYmctPmRiZ2J1c192YmlmX3J0KSk7Cj4gLQo+IC0JaWYg KElTX01TTTg5OThfVEFSR0VUKGh3dmVyc2lvbikpIHsKPiAtCQlkYmctPmRiZ2J1c19kcHUuZW50 cmllcyA9IGRiZ19idXNfZHB1Xzg5OTg7Cj4gLQkJZGJnLT5kYmdidXNfZHB1LmNtbi5lbnRyaWVz X3NpemUgPSBBUlJBWV9TSVpFKGRiZ19idXNfZHB1Xzg5OTgpOwo+IC0JCWRiZy0+ZGJnYnVzX2Rw dS5jbW4uZmxhZ3MgPSBEQkdCVVNfRkxBR1NfRFNQUDsKPiAtCj4gLQkJZGJnLT5kYmdidXNfdmJp Zl9ydC5lbnRyaWVzID0gdmJpZl9kYmdfYnVzX21zbTg5OTg7Cj4gLQkJZGJnLT5kYmdidXNfdmJp Zl9ydC5jbW4uZW50cmllc19zaXplID0KPiAtCQkJCUFSUkFZX1NJWkUodmJpZl9kYmdfYnVzX21z bTg5OTgpOwo+IC0JfSBlbHNlIGlmIChJU19TRE04NDVfVEFSR0VUKGh3dmVyc2lvbikgfHwgSVNf U0RNNjcwX1RBUkdFVChod3ZlcnNpb24pKSB7Cj4gLQkJZGJnLT5kYmdidXNfZHB1LmVudHJpZXMg PSBkYmdfYnVzX2RwdV9zZG04NDU7Cj4gLQkJZGJnLT5kYmdidXNfZHB1LmNtbi5lbnRyaWVzX3Np emUgPQo+IC0JCQkJQVJSQVlfU0laRShkYmdfYnVzX2RwdV9zZG04NDUpOwo+IC0JCWRiZy0+ZGJn YnVzX2RwdS5jbW4uZmxhZ3MgPSBEQkdCVVNfRkxBR1NfRFNQUDsKPiAtCj4gLQkJLyogdmJpZiBp cyB1bmNoYW5nZWQgdnMgODk5OCAqLwo+IC0JCWRiZy0+ZGJnYnVzX3ZiaWZfcnQuZW50cmllcyA9 IHZiaWZfZGJnX2J1c19tc204OTk4Owo+IC0JCWRiZy0+ZGJnYnVzX3ZiaWZfcnQuY21uLmVudHJp ZXNfc2l6ZSA9Cj4gLQkJCQlBUlJBWV9TSVpFKHZiaWZfZGJnX2J1c19tc204OTk4KTsKPiAtCX0g ZWxzZSB7Cj4gLQkJcHJfZXJyKCJ1bnN1cHBvcnRlZCBjaGlwc2V0IGlkICVYXG4iLCBod3ZlcnNp b24pOwo+IC0JfQo+IC19Cj4gLQo+IC1pbnQgZHB1X2RiZ19pbml0KHN0cnVjdCBkZXZpY2UgKmRl dikKPiAtewo+IC0JaWYgKCFkZXYpIHsKPiAtCQlwcl9lcnIoImludmFsaWQgcGFyYW1zXG4iKTsK PiAtCQlyZXR1cm4gLUVJTlZBTDsKPiAtCX0KPiAtCj4gLQlJTklUX0xJU1RfSEVBRCgmZHB1X2Ri Z19iYXNlLnJlZ19iYXNlX2xpc3QpOwo+IC0JZHB1X2RiZ19iYXNlLmRldiA9IGRldjsKPiAtCj4g LQlJTklUX1dPUksoJmRwdV9kYmdfYmFzZS5kdW1wX3dvcmssIF9kcHVfZHVtcF93b3JrKTsKPiAt Cj4gLQlyZXR1cm4gMDsKPiAtfQo+IC0KPiAtLyoqCj4gLSAqIGRwdV9kYmdfZGVzdHJveSAtIGRl c3Ryb3kgZHB1IGRlYnVnIGZhY2lsaXRpZXMKPiAtICovCj4gLXZvaWQgZHB1X2RiZ19kZXN0cm95 KHZvaWQpCj4gLXsKPiAtCV9kcHVfZGJnX2RlYnVnZnNfZGVzdHJveSgpOwo+IC19Cj4gLQo+IC12 b2lkIGRwdV9kYmdfc2V0X2RwdV90b3Bfb2Zmc2V0KHUzMiBibGtfb2ZmKQo+IC17Cj4gLQlkcHVf ZGJnX2Jhc2UuZGJnYnVzX2RwdS50b3BfYmxrX29mZiA9IGJsa19vZmY7Cj4gLX0KPiBkaWZmIC0t Z2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2RiZy5oIGIvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2RiZy5oCj4gZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0 Cj4gaW5kZXggMWU2ZmE5NDVmOThiLi4wMDAwMDAwMDAwMDAKPiAtLS0gYS9kcml2ZXJzL2dwdS9k cm0vbXNtL2Rpc3AvZHB1MS9kcHVfZGJnLmgKPiArKysgL2Rldi9udWxsCj4gQEAgLTEsMTAzICsw LDAgQEAKPiAtLyogQ29weXJpZ2h0IChjKSAyMDE2LTIwMTgsIFRoZSBMaW51eCBGb3VuZGF0aW9u LiBBbGwgcmlnaHRzIHJlc2VydmVkLgo+IC0gKgo+IC0gKiBUaGlzIHByb2dyYW0gaXMgZnJlZSBz b2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQo+IC0gKiBpdCB1 bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHZlcnNpb24g MiBhbmQKPiAtICogb25seSB2ZXJzaW9uIDIgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3 YXJlIEZvdW5kYXRpb24uCj4gLSAqCj4gLSAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAo+IC0gKiBidXQgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgo+IC0gKiBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhl Cj4gLSAqIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCj4gLSAq Lwo+IC0KPiAtI2lmbmRlZiBEUFVfREJHX0hfCj4gLSNkZWZpbmUgRFBVX0RCR19IXwo+IC0KPiAt I2luY2x1ZGUgPHN0ZGFyZy5oPgo+IC0jaW5jbHVkZSA8bGludXgvZGVidWdmcy5oPgo+IC0jaW5j bHVkZSA8bGludXgvbGlzdC5oPgo+IC0KPiAtZW51bSBkcHVfZGJnX2R1bXBfZmxhZyB7Cj4gLQlE UFVfREJHX0RVTVBfSU5fTE9HID0gQklUKDApLAo+IC0JRFBVX0RCR19EVU1QX0lOX01FTSA9IEJJ VCgxKSwKPiAtfTsKPiAtCj4gLSNpZiBkZWZpbmVkKENPTkZJR19ERUJVR19GUykKPiAtCj4gLS8q Kgo+IC0gKiBkcHVfZGJnX2luaXRfZGJnX2J1c2VzIC0gaW5pdGlhbGl6ZSBkZWJ1ZyBidXMgZHVt cGluZyBzdXBwb3J0IGZvciB0aGUgY2hpcHNldAo+IC0gKiBAaHd2ZXJzaW9uOgkJQ2hpcHNldCBy ZXZpc2lvbgo+IC0gKi8KPiAtdm9pZCBkcHVfZGJnX2luaXRfZGJnX2J1c2VzKHUzMiBod3ZlcnNp b24pOwo+IC0KPiAtLyoqCj4gLSAqIGRwdV9kYmdfaW5pdCAtIGluaXRpYWxpemUgZ2xvYmFsIGRw dSBkZWJ1ZyBmYWNpbGl0aWVzOiByZWdkdW1wCj4gLSAqIEBkZXY6CQlkZXZpY2UgaGFuZGxlCj4g LSAqIFJldHVybnM6CQkwIG9yIC1FUlJPUgo+IC0gKi8KPiAtaW50IGRwdV9kYmdfaW5pdChzdHJ1 Y3QgZGV2aWNlICpkZXYpOwo+IC0KPiAtLyoqCj4gLSAqIGRwdV9kYmdfZGVidWdmc19yZWdpc3Rl ciAtIHJlZ2lzdGVyIGVudHJpZXMgYXQgdGhlIGdpdmVuIGRlYnVnZnMgZGlyCj4gLSAqIEBkZWJ1 Z2ZzX3Jvb3Q6CWRlYnVnZnMgcm9vdCBpbiB3aGljaCB0byBjcmVhdGUgZHB1IGRlYnVnIGVudHJp ZXMKPiAtICogUmV0dXJuczoJMCBvciAtRVJST1IKPiAtICovCj4gLWludCBkcHVfZGJnX2RlYnVn ZnNfcmVnaXN0ZXIoc3RydWN0IGRlbnRyeSAqZGVidWdmc19yb290KTsKPiAtCj4gLS8qKgo+IC0g KiBkcHVfZGJnX2Rlc3Ryb3kgLSBkZXN0cm95IHRoZSBnbG9iYWwgZHB1IGRlYnVnIGZhY2lsaXRp ZXMKPiAtICogUmV0dXJuczoJbm9uZQo+IC0gKi8KPiAtdm9pZCBkcHVfZGJnX2Rlc3Ryb3kodm9p ZCk7Cj4gLQo+IC0vKioKPiAtICogZHB1X2RiZ19kdW1wIC0gdHJpZ2dlciBkdW1waW5nIG9mIGFs bCBkcHVfZGJnIGZhY2lsaXRpZXMKPiAtICogQHF1ZXVlX3dvcms6CSAgd2hldGhlciB0byBxdWV1 ZSB0aGUgZHVtcGluZyB3b3JrIHRvIHRoZSB3b3JrX3N0cnVjdAo+IC0gKiBAbmFtZToJICBzdHJp bmcgaW5kaWNhdGluZyBvcmlnaW4gb2YgZHVtcAo+IC0gKiBAZHVtcF9kYmdidXM6ICBkdW1wIHRo ZSBkcHUgZGVidWcgYnVzCj4gLSAqIEBkdW1wX3ZiaWZfcnQ6IGR1bXAgdGhlIHZiaWYgcnQgYnVz Cj4gLSAqIFJldHVybnM6CW5vbmUKPiAtICovCj4gLXZvaWQgZHB1X2RiZ19kdW1wKGJvb2wgcXVl dWVfd29yaywgY29uc3QgY2hhciAqbmFtZSwgYm9vbCBkdW1wX2RiZ2J1c19kcHUsCj4gLQkJICBi b29sIGR1bXBfZGJnYnVzX3ZiaWZfcnQpOwo+IC0KPiAtLyoqCj4gLSAqIGRwdV9kYmdfc2V0X2Rw dV90b3Bfb2Zmc2V0IC0gc2V0IHRoZSB0YXJnZXQgc3BlY2lmaWMgb2Zmc2V0IGZyb20gbWRzcyBi YXNlCj4gLSAqCWFkZHJlc3Mgb2YgdGhlIHRvcCByZWdpc3RlcnMuIFVzZWQgZm9yIGFjY2Vzc2lu ZyBkZWJ1ZyBidXMgY29udHJvbHMuCj4gLSAqIEBibGtfb2ZmOiBvZmZzZXQgZnJvbSBtZHNzIGJh c2Ugb2YgdGhlIHRvcCBibG9jawo+IC0gKi8KPiAtdm9pZCBkcHVfZGJnX3NldF9kcHVfdG9wX29m ZnNldCh1MzIgYmxrX29mZik7Cj4gLQo+IC0jZWxzZQo+IC0KPiAtc3RhdGljIGlubGluZSB2b2lk IGRwdV9kYmdfaW5pdF9kYmdfYnVzZXModTMyIGh3dmVyc2lvbikKPiAtewo+IC19Cj4gLQo+IC1z dGF0aWMgaW5saW5lIGludCBkcHVfZGJnX2luaXQoc3RydWN0IGRldmljZSAqZGV2KQo+IC17Cj4g LQlyZXR1cm4gMDsKPiAtfQo+IC0KPiAtc3RhdGljIGlubGluZSBpbnQgZHB1X2RiZ19kZWJ1Z2Zz X3JlZ2lzdGVyKHN0cnVjdCBkZW50cnkgKmRlYnVnZnNfcm9vdCkKPiAtewo+IC0JcmV0dXJuIDA7 Cj4gLX0KPiAtCj4gLXN0YXRpYyBpbmxpbmUgdm9pZCBkcHVfZGJnX2Rlc3Ryb3kodm9pZCkKPiAt ewo+IC19Cj4gLQo+IC1zdGF0aWMgaW5saW5lIHZvaWQgZHB1X2RiZ19kdW1wKGJvb2wgcXVldWVf d29yaywgY29uc3QgY2hhciAqbmFtZSwKPiAtCQkJCWJvb2wgZHVtcF9kYmdidXNfZHB1LCBib29s IGR1bXBfZGJnYnVzX3ZiaWZfcnQpCj4gLXsKPiAtfQo+IC0KPiAtc3RhdGljIGlubGluZSB2b2lk IGRwdV9kYmdfc2V0X2RwdV90b3Bfb2Zmc2V0KHUzMiBibGtfb2ZmKQo+IC17Cj4gLX0KPiAtCj4g LSNlbmRpZiAvKiBkZWZpbmVkKENPTkZJR19ERUJVR19GUykgKi8KPiAtCj4gLQo+IC0jZW5kaWYg LyogRFBVX0RCR19IXyAqLwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfZW5jb2Rlci5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2Vu Y29kZXIuYwo+IGluZGV4IDgyYzU1ZWZiNTAwZi4uZDVlMjUyOTQxYmE4IDEwMDY0NAo+IC0tLSBh L2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlci5jCj4gQEAgLTE0OTQsMTAgKzE0 OTQsOCBAQCBzdGF0aWMgdm9pZCBkcHVfZW5jb2Rlcl9oZWxwZXJfaHdfcmVzZXQoc3RydWN0IGRw dV9lbmNvZGVyX3BoeXMgKnBoeXNfZW5jKQo+ICAJCSAgICAgIGN0bC0+aWR4KTsKPiAgCj4gIAly YyA9IGN0bC0+b3BzLnJlc2V0KGN0bCk7Cj4gLQlpZiAocmMpIHsKPiArCWlmIChyYykKPiAgCQlE UFVfRVJST1JfRU5DKGRwdV9lbmMsICJjdGwgJWQgcmVzZXQgZmFpbHVyZVxuIiwgIGN0bC0+aWR4 KTsKPiAtCQlkcHVfZGJnX2R1bXAoZmFsc2UsIF9fZnVuY19fLCB0cnVlLCB0cnVlKTsKPiAtCX0K PiAgCj4gIAlwaHlzX2VuYy0+ZW5hYmxlX3N0YXRlID0gRFBVX0VOQ19FTkFCTEVEOwo+ICB9Cj4g ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3Bo eXNfY21kLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlz X2NtZC5jCj4gaW5kZXggMjRhOThmNGUxZjQ0Li5iMzdhMDk5MmUzMjYgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c19jbWQuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfY21kLmMK PiBAQCAtMjQzLDcgKzI0Myw2IEBAIHN0YXRpYyBpbnQgX2RwdV9lbmNvZGVyX3BoeXNfY21kX2hh bmRsZV9wcGRvbmVfdGltZW91dCgKPiAgCQkJICBhdG9taWNfcmVhZCgmcGh5c19lbmMtPnBlbmRp bmdfa2lja29mZl9jbnQpKTsKPiAgCj4gIAkJZHB1X2VuY29kZXJfaGVscGVyX3VucmVnaXN0ZXJf aXJxKHBoeXNfZW5jLCBJTlRSX0lEWF9SRFBUUik7Cj4gLQkJZHB1X2RiZ19kdW1wKGZhbHNlLCBf X2Z1bmNfXywgdHJ1ZSwgdHJ1ZSk7Cj4gIAl9Cj4gIAo+ICAJYXRvbWljX2FkZF91bmxlc3MoJnBo eXNfZW5jLT5wZW5kaW5nX2tpY2tvZmZfY250LCAtMSwgMCk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMgYi9kcml2ZXJz L2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfZW5jb2Rlcl9waHlzX3ZpZC5jCj4gaW5kZXggYjNj NjhjNGZjYzhlLi45ZmI3NGE4N2JkZmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21z bS9kaXNwL2RwdTEvZHB1X2VuY29kZXJfcGh5c192aWQuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vZGlzcC9kcHUxL2RwdV9lbmNvZGVyX3BoeXNfdmlkLmMKPiBAQCAtNjEzLDcgKzYxMyw2 IEBAIHN0YXRpYyB2b2lkIGRwdV9lbmNvZGVyX3BoeXNfdmlkX3ByZXBhcmVfZm9yX2tpY2tvZmYo Cj4gIAkJRFBVX0VSUk9SX1ZJREVOQyh2aWRfZW5jLCAiY3RsICVkIHJlc2V0IGZhaWx1cmU6ICVk XG4iLAo+ICAJCQkJY3RsLT5pZHgsIHJjKTsKPiAgCQlkcHVfZW5jb2Rlcl9oZWxwZXJfdW5yZWdp c3Rlcl9pcnEocGh5c19lbmMsIElOVFJfSURYX1ZTWU5DKTsKPiAtCQlkcHVfZGJnX2R1bXAoZmFs c2UsIF9fZnVuY19fLCB0cnVlLCB0cnVlKTsKPiAgCX0KPiAgfQo+ICAKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2N0bC5jIGIvZHJpdmVycy9ncHUv ZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2N0bC5jCj4gaW5kZXggOGZhNjAxYTlhYmJmLi40YWFi MDQzMzVjNmQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1 X2h3X2N0bC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2N0 bC5jCj4gQEAgLTEzLDcgKzEzLDYgQEAKPiAgI2luY2x1ZGUgPGxpbnV4L2RlbGF5Lmg+Cj4gICNp bmNsdWRlICJkcHVfaHdpby5oIgo+ICAjaW5jbHVkZSAiZHB1X2h3X2N0bC5oIgo+IC0jaW5jbHVk ZSAiZHB1X2RiZy5oIgo+ICAjaW5jbHVkZSAiZHB1X2ttcy5oIgo+ICAjaW5jbHVkZSAiZHB1X3Ry YWNlLmgiCj4gIAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfaHdfaW50Zi5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2ludGYu Ywo+IGluZGV4IDljNmJiYTBhYzdjMy4uNjk1ZDI3YTczMGU4IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19pbnRmLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfaW50Zi5jCj4gQEAgLTEzLDcgKzEzLDYgQEAKPiAg I2luY2x1ZGUgImRwdV9od2lvLmgiCj4gICNpbmNsdWRlICJkcHVfaHdfY2F0YWxvZy5oIgo+ICAj aW5jbHVkZSAiZHB1X2h3X2ludGYuaCIKPiAtI2luY2x1ZGUgImRwdV9kYmcuaCIKPiAgI2luY2x1 ZGUgImRwdV9rbXMuaCIKPiAgCj4gICNkZWZpbmUgSU5URl9USU1JTkdfRU5HSU5FX0VOICAgICAg ICAgICAweDAwMAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfaHdfbG0uYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19sbS5jCj4g aW5kZXggZGJlNDhlMDA2NDE0Li5jNzZiNWNjOTQ5ZmIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X2xtLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0v bXNtL2Rpc3AvZHB1MS9kcHVfaHdfbG0uYwo+IEBAIC0xNSw3ICsxNSw2IEBACj4gICNpbmNsdWRl ICJkcHVfaHdpby5oIgo+ICAjaW5jbHVkZSAiZHB1X2h3X2xtLmgiCj4gICNpbmNsdWRlICJkcHVf aHdfbWRzcy5oIgo+IC0jaW5jbHVkZSAiZHB1X2RiZy5oIgo+ICAjaW5jbHVkZSAiZHB1X2ttcy5o Igo+ICAKPiAgI2RlZmluZSBMTV9PUF9NT0RFICAgICAgICAgICAgICAgICAgICAgICAgMHgwMAo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfcGluZ3Bv bmcuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od19waW5ncG9uZy5jCj4g aW5kZXggNTJmY2ExM2RhMTc2Li5jZmM5MzgxNjA3OGYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X3Bpbmdwb25nLmMKPiArKysgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfcGluZ3BvbmcuYwo+IEBAIC0xNiw3ICsxNiw2IEBA Cj4gICNpbmNsdWRlICJkcHVfaHdpby5oIgo+ICAjaW5jbHVkZSAiZHB1X2h3X2NhdGFsb2cuaCIK PiAgI2luY2x1ZGUgImRwdV9od19waW5ncG9uZy5oIgo+IC0jaW5jbHVkZSAiZHB1X2RiZy5oIgo+ ICAjaW5jbHVkZSAiZHB1X2ttcy5oIgo+ICAjaW5jbHVkZSAiZHB1X3RyYWNlLmgiCj4gIAo+IGRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfc3NwcC5jIGIv ZHJpdmVycy9ncHUvZHJtL21zbS9kaXNwL2RwdTEvZHB1X2h3X3NzcHAuYwo+IGluZGV4IDg3NDUw MThmZmRkNi4uODI5Nzk2M2QyYzRjIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20v ZGlzcC9kcHUxL2RwdV9od19zc3BwLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfaHdfc3NwcC5jCj4gQEAgLTE0LDcgKzE0LDYgQEAKPiAgI2luY2x1ZGUgImRwdV9o d19jYXRhbG9nLmgiCj4gICNpbmNsdWRlICJkcHVfaHdfbG0uaCIKPiAgI2luY2x1ZGUgImRwdV9o d19zc3BwLmgiCj4gLSNpbmNsdWRlICJkcHVfZGJnLmgiCj4gICNpbmNsdWRlICJkcHVfa21zLmgi Cj4gIAo+ICAjZGVmaW5lIERQVV9GRVRDSF9DT05GSUdfUkVTRVRfVkFMVUUgICAweDAwMDAwMDg3 Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od190b3Au YyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od190b3AuYwo+IGluZGV4IGI4 NzgxMjU2ZTIxYi4uZjdlMGY2NjFhOGJiIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9t c20vZGlzcC9kcHUxL2RwdV9od190b3AuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlz cC9kcHUxL2RwdV9od190b3AuYwo+IEBAIC0xMyw3ICsxMyw2IEBACj4gICNpbmNsdWRlICJkcHVf aHdpby5oIgo+ICAjaW5jbHVkZSAiZHB1X2h3X2NhdGFsb2cuaCIKPiAgI2luY2x1ZGUgImRwdV9o d190b3AuaCIKPiAtI2luY2x1ZGUgImRwdV9kYmcuaCIKPiAgI2luY2x1ZGUgImRwdV9rbXMuaCIK PiAgCj4gICNkZWZpbmUgU1NQUF9TUEFSRSAgICAgICAgICAgICAgICAgICAgICAgIDB4MjgKPiBA QCAtMzYxLDggKzM2MCw2IEBAIHN0cnVjdCBkcHVfaHdfbWRwICpkcHVfaHdfbWRwdG9wX2luaXQo ZW51bSBkcHVfbWRwIGlkeCwKPiAgCQlnb3RvIGJsa19pbml0X2Vycm9yOwo+ICAJfQo+ICAKPiAt CWRwdV9kYmdfc2V0X2RwdV90b3Bfb2Zmc2V0KG1kcC0+aHcuYmxrX29mZik7Cj4gLQo+ICAJcmV0 dXJuIG1kcDsKPiAgCj4gIGJsa19pbml0X2Vycm9yOgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfdmJpZi5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9k aXNwL2RwdTEvZHB1X2h3X3ZiaWYuYwo+IGluZGV4IGQ0MzkwNTUyNWY5Mi4uMzhiZmQyMjJlZDcy IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vZGlzcC9kcHUxL2RwdV9od192Ymlm LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfaHdfdmJpZi5jCj4g QEAgLTEzLDcgKzEzLDYgQEAKPiAgI2luY2x1ZGUgImRwdV9od2lvLmgiCj4gICNpbmNsdWRlICJk cHVfaHdfY2F0YWxvZy5oIgo+ICAjaW5jbHVkZSAiZHB1X2h3X3ZiaWYuaCIKPiAtI2luY2x1ZGUg ImRwdV9kYmcuaCIKPiAgCj4gICNkZWZpbmUgVkJJRl9WRVJTSU9OCQkJMHgwMDAwCj4gICNkZWZp bmUgVkJJRl9DTEtfRk9SQ0VfQ1RSTDAJCTB4MDAwOAo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3Av ZHB1MS9kcHVfa21zLmMKPiBpbmRleCA5ODVjODU1Nzk2YWUuLmZkNWJhZDE2MzM4ZCAxMDA2NDQK PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMKPiArKysgYi9k cml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmMKPiBAQCAtMjY2LDEyICsyNjYs NiBAQCBzdGF0aWMgaW50IF9kcHVfZGVidWdmc19pbml0KHN0cnVjdCBkcHVfa21zICpkcHVfa21z KQo+ICAJCXJldHVybiBQVFJfRVJSKGRwdV9rbXMtPmRlYnVnZnNfcm9vdCk7Cj4gIAl9Cj4gIAo+ IC0JcmMgPSBkcHVfZGJnX2RlYnVnZnNfcmVnaXN0ZXIoZHB1X2ttcy0+ZGVidWdmc19yb290KTsK PiAtCWlmIChyYykgewo+IC0JCURSTV9FUlJPUigiZmFpbGVkIHRvIHJlZyBkcHUgZGJnIGRlYnVn ZnM6ICVkXG4iLCByYyk7Cj4gLQkJcmV0dXJuIHJjOwo+IC0JfQo+IC0KPiAgCS8qIGFsbG93IHJv b3QgdG8gYmUgTlVMTCAqLwo+ICAJZGVidWdmc19jcmVhdGVfeDMyKERQVV9ERUJVR0ZTX0hXTUFT S05BTUUsIDA2MDAsIGRwdV9rbXMtPmRlYnVnZnNfcm9vdCwgcCk7Cj4gIAo+IEBAIC03MDUsNyAr Njk5LDYgQEAgc3RhdGljIHZvaWQgZHB1X2ttc19kZXN0cm95KHN0cnVjdCBtc21fa21zICprbXMp Cj4gIAo+ICAJZHB1X2ttcyA9IHRvX2RwdV9rbXMoa21zKTsKPiAgCj4gLQlkcHVfZGJnX2Rlc3Ry b3koKTsKPiAgCV9kcHVfa21zX2h3X2Rlc3Ryb3koZHB1X2ttcyk7Cj4gIH0KPiAgCj4gQEAgLTg2 NiwxNiArODU5LDEwIEBAIHN0YXRpYyBpbnQgZHB1X2ttc19od19pbml0KHN0cnVjdCBtc21fa21z ICprbXMpCj4gIAkJcmV0dXJuIHJjOwo+ICAJfQo+ICAKPiAtCXJjID0gZHB1X2RiZ19pbml0KCZk cHVfa21zLT5wZGV2LT5kZXYpOwo+IC0JaWYgKHJjKSB7Cj4gLQkJRFJNX0VSUk9SKCJmYWlsZWQg dG8gaW5pdCBkcHUgZGJnOiAlZFxuIiwgcmMpOwo+IC0JCXJldHVybiByYzsKPiAtCX0KPiAtCj4g IAlwcml2ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPiAgCWlmICghcHJpdikgewo+ICAJCURQVV9FUlJP UigiaW52YWxpZCBwcml2YXRlIGRhdGFcbiIpOwo+IC0JCWdvdG8gZGJnX2Rlc3Ryb3k7Cj4gKwkJ cmV0dXJuIHJjOwo+ICAJfQo+ICAKPiAgCWRwdV9rbXMtPm1taW8gPSBtc21faW9yZW1hcChkcHVf a21zLT5wZGV2LCAibWRwIiwgIm1kcCIpOwo+IEBAIC05NDAsOCArOTI3LDYgQEAgc3RhdGljIGlu dCBkcHVfa21zX2h3X2luaXQoc3RydWN0IG1zbV9rbXMgKmttcykKPiAgCQlnb3RvIHBvd2VyX2Vy cm9yOwo+ICAJfQo+ICAKPiAtCWRwdV9kYmdfaW5pdF9kYmdfYnVzZXMoZHB1X2ttcy0+Y29yZV9y ZXYpOwo+IC0KPiAgCS8qCj4gIAkgKiBOb3cgd2UgbmVlZCB0byByZWFkIHRoZSBIVyBjYXRhbG9n IGFuZCBpbml0aWFsaXplIHJlc291cmNlcyBzdWNoIGFzCj4gIAkgKiBjbG9ja3MsIHJlZ3VsYXRv cnMsIEdEU0MvTU1BR0lDLCBpb3JlbWFwIHRoZSByZWdpc3RlciByYW5nZXMgZXRjCj4gQEAgLTEw NDgsOCArMTAzMyw3IEBAIHN0YXRpYyBpbnQgZHB1X2ttc19od19pbml0KHN0cnVjdCBtc21fa21z ICprbXMpCj4gIAlwbV9ydW50aW1lX3B1dF9zeW5jKCZkcHVfa21zLT5wZGV2LT5kZXYpOwo+ICBl cnJvcjoKPiAgCV9kcHVfa21zX2h3X2Rlc3Ryb3koZHB1X2ttcyk7Cj4gLWRiZ19kZXN0cm95Ogo+ IC0JZHB1X2RiZ19kZXN0cm95KCk7Cj4gKwo+ICAJcmV0dXJuIHJjOwo+ICB9Cj4gIAo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmggYi9kcml2ZXJz L2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmgKPiBpbmRleCAyYTM2MjVlZWY2ZDMuLjEy YTJlYjkwZTZiNSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9k cHVfa21zLmgKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL2Rpc3AvZHB1MS9kcHVfa21zLmgK PiBAQCAtMjMsNyArMjMsNiBAQAo+ICAjaW5jbHVkZSAibXNtX2ttcy5oIgo+ICAjaW5jbHVkZSAi bXNtX21tdS5oIgo+ICAjaW5jbHVkZSAibXNtX2dlbS5oIgo+IC0jaW5jbHVkZSAiZHB1X2RiZy5o Igo+ICAjaW5jbHVkZSAiZHB1X2h3X2NhdGFsb2cuaCIKPiAgI2luY2x1ZGUgImRwdV9od19jdGwu aCIKPiAgI2luY2x1ZGUgImRwdV9od19sbS5oIgo+IC0tIAo+IDIuMTguMAo+IAoKLS0gClNlYW4g UGF1bCwgU29mdHdhcmUgRW5naW5lZXIsIEdvb2dsZSAvIENocm9taXVtIE9TCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkZyZWVkcmVubyBtYWlsaW5nIGxp c3QKRnJlZWRyZW5vQGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ZyZWVkcmVubwo=